http://jsfiddle.net/xEpGg/740/
如果我在剧本后面直接使用:
$.custom.test();
它按预期工作。但是,如果我把它放在HTML中的任何地方,它就不会触发。我在jQuery中定义了我的对象,不应该在页面的任何地方都可以访问它吗?
答案 0 :(得分:1)
查看解决方案here:您需要先定义自定义函数,然后才能使用它。 像这样:
<script>
$.custom = {
test : function() { alert("wtf"); }
};
</script>
<div id="helloworld" style="border:solid; border-width:5px;">
BLAH
</div>
<script>
$.custom.test();
</script>
答案 1 :(得分:1)
如果您无法以@frenchie建议的方式定义该功能,请尝试:
setTimeout(function(){$.custom.test();}, 0);
Why is setTimeout(fn, 0) sometimes useful?
为什么你想要为jQuery全局分配任何内容?
答案 2 :(得分:0)
您在加载页面后将其添加到页面中,但在加载之前发票$.custom.test()
。
将此选项更改为no wrap (head)
,它会正常工作..