jQuery 和 document.ready() 触发两次
jQuery and document.ready() firing twice
我知道这是一个很常见的问题,但即使进行了研究,我也无法理解我在调用document.ready()Javascript函数时出了什么问题。
出于某种原因,它被调用了两次,即使我除了警报之外不执行任何其他操作。
正如我在标题中所说,我正在使用jQuery,并且认为某些东西可能来自$(function(){}),所以我也删除了其中的任何执行。没有任何变化,document.ready() 仍然被调用两次。
这个问题的起源可能是什么?如何排除/解决?
提前感谢!
这是我尝试过的代码:
$(function(){
//$( "#tabs" ).tabs();
});
$(document).ready(function() {
//getTableEntity("organisation", "getentitytable", "#testtable");
//standardDataTable('#tableOrga');
alert("document.ready");
});
编辑:我知道我两次使用相同的功能。将所有内容放在一个函数中并不能解决问题。
您是否使用如此智能的模板引擎或.net或其他东西?可能是jquery有一个双脚本源。然后是副作用。
你可以用这段代码检查 dom 是否准备好了。将代码放在 JavaScript 源文件中。
// If the DOM is already ready
if ( jQuery.isReady ) {
// Execute the function immediately
fn.call( document, jQuery );
} // ...
应该使用其中之一...并将您的代码放在以下jQuery函数之一上
$(function(){
//$( "#tabs" ).tabs();
});
或
$(document).ready(function() {
//getTableEntity("organisation", "getentitytable", "#testtable");
//standardDataTable('#tableOrga');
alert("document.ready");
});
$(function(){
等于$(document.ready)
在jquery上阅读这里
我认为这个演示会对你有所帮助
<script>
$(function(){
$('#test1').appendTo('#test2');
console.log(1);
})
</script>
<div id="test1">
<script>
$(function(){
console.log(2);
});
</script>
</div>
<div id="test2"></div>
控制台.log(2) 将触发两次。
相关文章:
- Meteor Router数据函数被调用两次
- 从MySQL数据库中获取输入数据需要两次页面刷新
- Module.start()已激发两次
- Jquery点击事件必须点击两次
- Append元素在运行两次函数后不显示
- 防止双击执行两次jQuery post请求
- 我必须点击两次才能激活任何按钮操作(离子/角度)
- 单击jQuery会激发两次
- 如何避免在树上走两次
- button.单击两次删除附加操作后不工作
- 由于$compile,Javascript(Angular)嵌套指令加载了两次
- 单击元素两次后执行操作
- 文件上传文档.ready .on('submit') 提交了两次
- jQuery 和 document.ready() 触发两次
- jQuery $(document).ready () 触发两次
- jquery ready 函数在我单击锚标记时执行两次
- JQuery wrapInner 触发器 jQuery(document).ready 两次.
- $(document).ready(function(){} jquery被调用两次
- $(document).ready和Window onload导致事件触发两次
- Angular.element (ready)函数在cordova中被调用两次