在部分回发后,我一直在努力让我的jquery gritter通知工作,经过大量的谷歌搜索,我发现了许多推荐pageLoad函数的建议。我不确定我是否正确地实现了它,但现在gritter通知根本不显示,甚至在部分或全部回发之前也不显示。
你能看出我哪里错了吗?Javascript/jquery不是我的强项。
<script type="text/javascript">
function pageLoad() {
$(function () {
$('.buy-notify').click(function () {
var spn = this.attributes.getNamedItem('PartNumber').value;
$.gritter.add({
title: 'Order notification..',
text: 'Adding ' + spn + ' to basket',
time: 1000
});
return true;
});
});
};
</script>提前谢谢你,
戴夫
发布于 2011-07-07 00:11:00
$(function () { ... });在页面加载时被调用,您不需要将其包装在一个名为pageLoad的函数中。
如果.buy-notify元素是在页面加载之后添加的,则可能需要使用.live('click', function() ...而不是.click(function() ...绑定,因为.click仅绑定到初始页面加载时jQuery可见的元素。
发布于 2011-07-07 00:12:48
它们可能指的是页面完全加载时运行的函数的jQuery快捷方式:
$(function() {
$('.buy-notify').click(function () {
var spn = this.attributes.getNamedItem('PartNumber').value;
$.gritter.add({
title: 'Order notification..',
text: 'Adding ' + spn + ' to basket',
time: 1000
});
return true;
});
});发布于 2011-07-07 00:47:12
他们没有必要这样做
$(function () {
});在函数中,您可以通过在HTML中的Body标记上使用onload事件来完成此操作,如下所示
<body onload="javascript:pageLoad()">否则,检查jQuery中的页面加载并绑定事件
$(function() {
$('.buy-notify').click(function () {
var spn = this.attributes.getNamedItem('PartNumber').value;
$.gritter.add({
title: 'Order notification..',
text: 'Adding ' + spn + ' to basket',
time: 1000
});
return true;
});
});第三种方法有点简单,即
<a href="javascript:void(0)" onclick="javascript:iamclick(0)"></a>
function iamclick(){
var spn = this.attributes.getNamedItem('PartNumber').value;
$.gritter.add({
title: 'Order notification..',
text: 'Adding ' + spn + ' to basket',
time: 1000
});
return true;
});
}https://stackoverflow.com/questions/6599546
复制相似问题