JQuery 引发两次$(document.ready)事件


Posted in Javascript onJanuary 15, 2010

页面大概是这样的,一个Partial View,而这个View包含了一小段绑定Search的Javascript,并且用Jquery-ui 的dialog 包含,而且确定不是ASP.net mvc生成HTML的问题,HTML是依照我的想法生成的,后来实在没有办法,把dialog的代码去掉,Search按就正常了。查了一下dialog的代码,发现 是appendTo引发的。
做了实验,代码如下:
代码

<script type="text/javascript"> 
$(document).ready(function() { 
$("#a1").appendTo($("#a2")); 
}); 
</script> <div id="a1"> 
<script type="text/javascript"> 
alert('a1'); 
</script> 
</div> 
<div id="a2"> 
</div>

预计 alert('a1') 应该执行一次的,但是由于使用了appendTo,执行了两次,无论你在 a1 div里面是否使用$(document).ready,都会运行两次javascript,第一次document 加载完成,第二次是调用 appendTo.

首先改为下面这种方式,失败。
代码

<div id="a1"> 
<script type="text/javascript"> 
loaded = false; 
if (loaded == false) { 
alert('a1'); 
loaded = true; 
} 
</script> 
</div>

再改成下面这种,就可以成功了。
var loaded = false; 
$(document).ready(function() { 
if (!loaded) { 
alert('a1'); 
loaded = true; 
} 
});
Javascript 相关文章推荐
精通Javascript系列之数据类型 字符串
Jun 08 Javascript
Chosen 基于jquery的选择框插件使用方法
May 30 Javascript
cookie中的path与domain属性详解
Dec 18 Javascript
JavaScript函数作用域链分析
Feb 13 Javascript
javascript实时显示北京时间的方法
Mar 12 Javascript
js自定义回调函数
Dec 13 Javascript
基于jQuery实现表格内容的筛选功能
Aug 21 Javascript
javascript中json对象json数组json字符串互转及取值方法
Apr 19 Javascript
详解VueJS 数据驱动和依赖追踪分析
Jul 26 Javascript
详解vue-cli 本地开发mock数据使用方法
May 29 Javascript
vue 使用v-for进行循环的实例代码详解
Feb 19 Javascript
ES6 async、await的基本使用方法示例
Jun 06 Javascript
用jQuery扩展自写的 UI导航
Jan 13 #Javascript
jQuery的一些特性和用法整理小结
Jan 13 #Javascript
JavaScript关于select的相关操作说明
Jan 13 #Javascript
海量经典的jQuery插件集合
Jan 12 #Javascript
JQuery获取元素文档大小、偏移和位置和滚动条位置的方法集合
Jan 12 #Javascript
jquery下操作HTML控件的实现代码
Jan 12 #Javascript
jquery插件 cluetip 关键词注释
Jan 12 #Javascript
You might like
PHP与javascript对多项选择的处理
2006/10/09 PHP
基于mysql的论坛(6)
2006/10/09 PHP
php中cookie的作用域
2008/03/27 PHP
php防止网站被攻击的应急代码
2015/10/21 PHP
微信支付开发发货通知实例
2016/07/12 PHP
解决Laravel5.2 Auth认证退出失效的问题
2019/10/14 PHP
PHP7变量处理机制修改
2021/03/09 PHP
jquery ajax 局部刷新小案例
2014/02/08 Javascript
JavaScript中的pow()方法使用详解
2015/06/15 Javascript
Bootstrap实现弹性搜索框
2016/07/11 Javascript
JavaScript中undefined和null的区别
2017/05/03 Javascript
微信小程序sessionid不一致问题解决
2019/08/30 Javascript
JavaScript(js)处理的HTML事件、键盘事件、鼠标事件简单示例
2019/11/19 Javascript
js实现蒙版效果
2020/01/11 Javascript
详解JavaScript匿名函数和闭包
2020/07/10 Javascript
[02:35]DOTA2英雄基础教程 狙击手
2014/01/14 DOTA
[02:11]完美世界DOTA2联赛10月28日赛事精彩集锦:来吧展示实力强劲
2020/10/29 DOTA
[01:09:13]DOTA2-DPC中国联赛 正赛 CDEC vs XG BO3 第三场 1月19日
2021/03/11 DOTA
Django中更新多个对象数据与删除对象的方法
2015/07/17 Python
python pandas 组内排序、单组排序、标号的实例
2018/04/12 Python
python利用7z批量解压rar的实现
2019/08/07 Python
python 解决cv2绘制中文乱码问题
2019/12/23 Python
TensorFlow2.0:张量的合并与分割实例
2020/01/19 Python
tensorflow之变量初始化(tf.Variable)使用详解
2020/02/06 Python
python代码实现TSNE降维数据可视化教程
2020/02/28 Python
python爬取天气数据的实例详解
2020/11/20 Python
SmartBuyGlasses德国:购买太阳镜和眼镜
2019/08/20 全球购物
毕业生物理教师求职信
2013/10/17 职场文书
自动化专业个人求职信范文
2013/12/30 职场文书
项目投资意向书
2014/04/01 职场文书
民政局个人整改措施
2014/09/24 职场文书
考试作弊万能检讨书
2014/10/19 职场文书
2015年小学体育工作总结
2015/05/22 职场文书
航班延误投诉信
2015/07/02 职场文书
《比尾巴》教学反思
2016/02/24 职场文书
JavaScript中的宏任务和微任务详情
2021/11/27 Javascript