小编典典

jQuery-多个$(document).ready ...?

javascript

题:

如果我链接两个都带有$(document).ready函数的JavaScript文件,会发生什么情况?一个会覆盖另一个吗?还是两者都$(document).ready被叫?

例如,

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"></script>

<script type="text/javascript" src="http://.../jquery1.js"></script>

<script type="text/javascript" src="http://.../jquery2.js"></script>

jquery1.js:

$(document).ready(function(){
    $("#page-title").html("Document-ready was called!");
});

jquery2.js:

$(document).ready(function(){
    $("#page-subtitle").html("Document-ready was called!");
});

我相信最好的方法是将两个调用简单地合并为一个,$(document).ready但是在我的情况下这不太可能。


阅读 490

收藏
2020-04-25

共1个答案

小编典典

所有人都会被执行, 并且在首次调用的基础上运行!!

<div id="target"></div>

<script>
  $(document).ready(function(){
    jQuery('#target').append('target edit 1<br>');
  });
  $(document).ready(function(){
    jQuery('#target').append('target edit 2<br>');
  });
  $(document).ready(function(){
    jQuery('#target').append('target edit 3<br>');
  });
</script>

演示如您所见,它们不会互相替换

我还要提一件事

代替这个

$(document).ready(function(){});

您可以使用此快捷方式

jQuery(function(){
   //dom ready codes
});
2020-04-25