Javascript jQuery对象不';行不通
当我将jQuery对象存储在变量中时,如下所示:Javascript jQuery对象不';行不通,javascript,jquery,variables,object,Javascript,Jquery,Variables,Object,当我将jQuery对象存储在变量中时,如下所示: var $myObject = $("div#comments"); <script type="text/javascript"> $(function() { loadComments(params); }); </script> …我无法使用对象$myObject 这就是我正在做的更改div#comments的html: 它什么也不做。我也尝试过这种方法,这次在div#comments中选择一个元素: 它
var $myObject = $("div#comments");
<script type="text/javascript">
$(function() {
loadComments(params);
});
</script>
…我无法使用对象$myObject
这就是我正在做的更改div#comments的html:
它什么也不做。我也尝试过这种方法,这次在div#comments中选择一个元素:
它不起作用
我只想能够将一个元素保存在变量中,然后使用它
注意:有些人不会将$放在变量名之前,例如:myObject。您只提供了代码的一小部分,因此无法确定,但很有可能是您在
元素前面的
元素中运行代码,而不执行任何操作(例如使用ready事件)延迟代码的执行,直到div存在
结果是得到一个没有找到元素的jQuery对象。移动脚本元素,使其位于div之后。这是一个好位置 语法非常有效,应该可以正常工作。您是否在动态地附加comments div?您应该
alert($myObject.length)
查看它是0还是1,如果是0,则表示它从未被拾取
在dom就绪、窗口加载或ajax回调之前,您可能需要绑定
var
语句。好吧,这个语法非常好,所以还有其他事情要做。你能展示你的标记吗?如果添加一个警报($myObject.length),会得到什么?还有最后一件事要检查。。。是否在准备就绪的处理程序中运行此操作?是否在加载文档后调用它
// This will ensure that the code doesn't run until
// the document has loaded
$(function() {
var $myObject = $("div#comments");
});
(这是jQuery的.ready()
方法的快捷方式。)
,它就应该可以工作
还要记住,页面上只能有一个元素具有任何给定的ID。因此,执行
$(“#注释”)实际上更好(更快)代码>而不是$(“div#comments”)代码>好的,谢谢大家。
我找到了解决办法
我考虑了在DOM中加载东西的顺序,并找到了解决方案。
(标记)的问题是:
加载注释(参数);
上面的代码是由PHP编写的!
因此,只要浏览器读取代码,它就会执行该函数。
调用函数后,我已经尝试将脚本放在页面的末尾。尚未定义该函数
因此,函数loadComments应该在div准备就绪并定义函数之后执行
我用.ready()将代码包装在标记之间,如下所示:
var $myObject = $("div#comments");
<script type="text/javascript">
$(function() {
loadComments(params);
});
</script>
$(函数(){
加载注释(参数);
});
这让人分心。
对不起大家!
非常感谢
如果你有同样的问题,你不明白我做了什么,问我。XD你做错了别的事情;那应该work@Akay-嗯,是和否。这是一条同样的捷径o) 哦,我明白了,有人能告诉我如何使我的代码看起来像注释中的代码:D吗。。上述评论是embarasing@Akay-使用左制表键上方的重重音
字符`
<script type="text/javascript">
$(function() {
loadComments(params);
});
</script>