博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JQuery学习笔记
阅读量:5231 次
发布时间:2019-06-14

本文共 1666 字,大约阅读时间需要 5 分钟。

1.$

针对我一直不理解的为什么jQuery里面在文档任意位置写一个$就可以执行,而原生的必须写到window.onload里面才可以,否则就是全局变量了,当时我也考虑过每次都要写在window.onload里面,一个界面只能写一个window.onload呀,这样岂不是很麻烦?

  • window.onload必须等到页面内包括图片的所有元素加载完毕后才能执行,$(document).ready()是DOM结构绘制完毕后就执行,不必等到加载完毕
  • window.onload不能同时编写多个,如果有多个window.onload方法,只会执行一个,$(document).ready()可以同时编写多个,并且都可以得到执行
  • window.onload没有简化写法,$(document).ready(function(){})可以简写成$(function(){})

查了下ready()方法,里面这样说

  (1)这个方法纯粹是对向window.load事件注册事件的替代方法。通过使用这个方法,可以在DOM载入就绪能够读取并操纵时(也就是说,不会等待页面中的图片等资源加载完毕)立即调用你所绑定的函数

  (2)而且请确保在 <body> 元素的onload事件中没有注册函数,否则不会触发+$(document).ready()事件

  (3)可以在同一个页面中无限次地使用$(document).ready()事件。其中注册的函数会按照(代码中的)先后顺序依次执行。

  (4)$(document).ready可简写为$(...),同时内部的 jQuery 代码依然使用 $ 作为别名,而不管全局的 $ 为何。

《我想知道jQuery的$如何把所有的函数统一放到window.onload里面的,而且如何做到在DOM加载完成后执行而不是window.onload后执行》

 

2.解决冲突

有时会有jQuery和其他的库或自己写的一些公共脚本文件一起使用的场景,就有可能会出现$冲突的问题

  解决方法很多,最常用的方式是:

jQuery.noConflict(); //将$控制权移交出去,以前使用$的地方都改用jQueryjQuery(document).ready(function () {    alert(jQuery("#span1").html());});

方法还有很多,摘自网络,方法暂不明确

//方式2var $j=jQuery.noConflict(); //定义快捷方式$j(document).ready(function () {    alert($j("#span1").html());});
//方式3jQuery.noConflict(); //在函数内部继续使用$jQuery(function ($) {    alert($("#span1").html());});
//方式4jQuery.noConflict(); //在函数内部继续使用$另一种方式(function ($) {    $(function(){        alert($("#span1").html());    });})(jQuery);

 

针对于解决冲突的代码查看了源码   jQuery.noConflict()

jQuery.extend({    noConflict: function( deep ) {        if ( window.$ === jQuery ) {            window.$ = _$;        }        if ( deep && window.jQuery === jQuery ) {            window.jQuery = _jQuery;        }        return jQuery;    })

 

转载于:https://www.cnblogs.com/Nomand/p/4234986.html

你可能感兴趣的文章
Fragment
查看>>
比较安全的获取站点更目录
查看>>
苹果开发者账号那些事儿(二)
查看>>
使用C#交互快速生成代码!
查看>>
UVA11374 Airport Express
查看>>
P1373 小a和uim之大逃离 四维dp,维护差值
查看>>
NOIP2015 运输计划 树上差分+树剖
查看>>
P3950 部落冲突 树链剖分
查看>>
读书_2019年
查看>>
读书汇总贴
查看>>
微信小程序 movable-view组件应用:可拖动悬浮框_返回首页
查看>>
MPT树详解
查看>>
空间分析开源库GEOS
查看>>
RQNOJ八月赛
查看>>
前端各种mate积累
查看>>
jQuery 1.7 发布了
查看>>
Python(软件目录结构规范)
查看>>
Windows多线程入门のCreateThread与_beginthreadex本质区别(转)
查看>>
Nginx配置文件(nginx.conf)配置详解1
查看>>
linux php编译安装
查看>>