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广告实现代码
Nov 17 Javascript
详解JavaScript中void语句的使用
Jun 04 Javascript
jQuery实现进度条效果代码
Dec 17 Javascript
基于JavaScript代码实现兼容各浏览器的设为首页和加入收藏
Jan 07 Javascript
JavaScript学习笔记--常用的互动方法
Dec 07 Javascript
ES6 javascript中Class类继承用法实例详解
Oct 30 Javascript
webpack中如何使用雪碧图的示例代码
Nov 11 Javascript
小程序如何构建骨架屏
May 29 Javascript
JS实现的定时器展示简单秒表、页面弹框及跳转操作完整示例
Jan 26 Javascript
Preload基础使用方法详解
Feb 03 Javascript
webpack.DefinePlugin与cross-env区别详解
Feb 23 Javascript
深入解析微信小程序开发中遇到的几个小问题
Jul 11 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
香妃
2021/03/03 冲泡冲煮
php查看session内容的函数
2008/08/27 PHP
Ajax+PHP边学边练 之五 图片处理
2009/12/03 PHP
php对象和数组相互转换的方法
2015/05/12 PHP
Laravel框架自定义验证过程实例分析
2019/02/01 PHP
新发现一个骗链接的方法(js读取cookies)
2012/01/11 Javascript
jquery获取tr并更改tr内容示例代码
2014/02/13 Javascript
举例简介AngularJS的内部语言环境
2015/06/17 Javascript
JQuery操作textarea,input,select,checkbox方法
2015/09/02 Javascript
举例讲解JavaScript中关于对象操作的相关知识
2015/11/16 Javascript
原生javascript实现解析XML文档与字符串
2016/03/01 Javascript
js事件驱动机制 浏览器兼容处理方法
2016/07/23 Javascript
浅谈JavaScript 数据属性和访问器属性
2016/09/01 Javascript
Vue.js绑定HTML class数组语法错误的原因分析
2016/10/19 Javascript
用户管理的设计_jquery的ajax实现二级联动效果
2017/07/13 jQuery
完美解决mui框架off-canvas侧滑超出部分隐藏无法滚动的问题
2018/01/25 Javascript
深入浅出理解JavaScript闭包的功能与用法
2018/08/01 Javascript
解决Layui数据表格的宽高问题
2019/09/28 Javascript
[02:53]DOTA2亚洲邀请赛 NewBee战队巡礼
2015/02/03 DOTA
python 合并文件的具体实例
2013/08/08 Python
python的tkinter布局之简单的聊天窗口实现方法
2014/09/03 Python
python 连接sqlite及简单操作
2017/06/30 Python
利用python求解物理学中的双弹簧质能系统详解
2017/09/29 Python
详解python中的 is 操作符
2017/12/26 Python
Python使用Dijkstra算法实现求解图中最短路径距离问题详解
2018/05/16 Python
twilio python自动拨打电话,播放自定义mp3音频的方法
2019/08/08 Python
css3实现3D色子翻转特效
2014/12/23 HTML / CSS
HTML5+CSS3实现无插件拖拽上传图片(支持预览与批量)
2017/01/05 HTML / CSS
英国家庭珠宝商:T. H. Baker
2018/02/08 全球购物
在weblogic中发布ejb需涉及到哪些配置文件
2012/01/17 面试题
祖国在我心中演讲稿
2014/01/15 职场文书
班级安全教育实施方案
2014/02/23 职场文书
2015大学生实训报告
2014/11/05 职场文书
周年庆典答谢词
2015/01/20 职场文书
Mybatis-plus在项目中的简单应用
2021/07/01 Java/Android
SpringBoot使用ip2region获取地理位置信息的方法
2022/06/21 Java/Android