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 相关文章推荐
解决 firefox 不支持 document.all的方法
Mar 12 Javascript
javascript控制frame,iframe的src属性代码
Dec 31 Javascript
javascript针对DOM的应用分析(四)
Apr 15 Javascript
JQuery实现动态表格点击按钮表格增加一行
Aug 24 Javascript
AngularJS入门教程之学习环境搭建
Dec 06 Javascript
cocos2dx骨骼动画Armature源码剖析(一)
Sep 08 Javascript
node.js使用cluster实现多进程
Mar 17 Javascript
JavaScript表单焦点自动切换代码
Jul 24 Javascript
javascript 数组去重复(在线去重工具)
Dec 17 Javascript
Bootstrap table简单使用总结
Feb 15 Javascript
微信小程序实现pdf、word等格式文件上传的方法
Sep 10 Javascript
js实现微信聊天界面
Aug 09 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
星际流派综述
2020/03/04 星际争霸
PHP 巧用数组降低程序的时间复杂度
2010/01/01 PHP
php shell超强免杀、减少体积工具实现代码
2012/10/16 PHP
Yii2使用表单上传文件的实例代码
2017/08/03 PHP
javascript检查日期格式的函数[比较全]
2008/10/17 Javascript
Jquery中val()表单取值赋值的实例代码
2013/08/15 Javascript
javascript设置连续两次点击按钮时间间隔的方法
2014/10/28 Javascript
用svg制作富有动态的tooltip
2015/07/17 Javascript
JavaScript——DOM操作——Window.document对象详解
2016/07/14 Javascript
基于Bootstrap的Metronic框架实现条码和二维码的生成及打印处理操作
2016/08/29 Javascript
Bootstrap图片轮播组件Carousel使用方法详解
2016/10/20 Javascript
jQuery自定义组件(导入组件)
2016/11/08 Javascript
JS获取浏览器地址栏的多个参数值的任意值实例代码
2018/07/24 Javascript
微信小程序实现拖拽功能
2019/09/26 Javascript
详解vue中$nextTick和$forceUpdate的用法
2019/12/11 Javascript
微信浏览器下拉黑边解决方案 wScroollFix
2020/01/21 Javascript
vue等两个接口都返回结果再执行下一步的实例
2020/09/08 Javascript
微信小程序实现点赞业务
2021/02/10 Javascript
[02:38]DOTA2英雄基础教程 噬魂鬼
2014/01/03 DOTA
Python配置文件解析模块ConfigParser使用实例
2015/04/13 Python
Python多线程编程之多线程加锁操作示例
2018/09/06 Python
解决Python中list里的中文输出到html模板里的问题
2018/12/17 Python
Python安装Flask环境及简单应用示例
2019/05/03 Python
java判断三位数的实例讲解
2019/06/10 Python
Pyspark读取parquet数据过程解析
2020/03/27 Python
浅谈CSS3中display属性的Flex布局的方法
2017/08/14 HTML / CSS
详解HTML5中的Communication API基本使用方法
2016/01/29 HTML / CSS
英国在线女鞋目的地:SIMMI
2018/12/27 全球购物
英国网上自行车商店:Tredz Bikes
2019/10/29 全球购物
客服工作职责
2013/12/11 职场文书
装饰资料员岗位职责
2013/12/30 职场文书
《特殊的葬礼》教学反思
2014/04/27 职场文书
自主招生教师推荐信
2014/05/10 职场文书
任命书模板
2014/06/04 职场文书
药店收银员岗位职责
2015/04/07 职场文书
2016年企业安全生产月活动总结
2016/04/06 职场文书