jQuery-入口函数,$冲突问题

jQuery-入口函数,$冲突问题

原生js和jQuery加载模式不同

  1. 原生js会等DOM加载完成,图片等资源也加载完成再执行;
  2. jQuery会等DOM加载完成,但不会等图片等资源加载完成就会执行。

多个入口函数

  1. 原生js如果编写了多个入口函数,后面编写的会覆盖前面编写的。
window.onload = function(e){
	console.log("hello1");
}
window.onload = function(e){
	console.log("hello2");
}
//hello2

2.jQuery的入口函数如果编写了多个,后面写的不会覆盖前面的。

$(document).ready(function(){
	console.log("hello1");
})
$(document).ready(function(){
	console.log("hello2");
})
//hello1
//hello2

jQuery入口函数的其他写法

  1. 第一种写法
$(document).ready(function(){
	console.log("hello1");
})
  1. 第二种写法
jQuery(document).ready(function(){
	console.log("hello1");
})
  1. 第三种写法
$(function(){
	console.log("hello1");
})
  1. 第四种写法
jQuery(function(){
	console.log("hello1");
})

jQuery冲突问题

如果引入了多个框架,并其他框架也引入了$的冲突解决办法:

  • 1.释放$的使用权;
  • 2.自定义一个访问符号。
//解决方法:
//1.释放$的使用权;
//注意点:释放操作必须在编写其他jQuery代码之前编写,释放之后就不能再使用$,改用jQuery。
jQuery.noConflict();
jQuery(function(){
	alert("hello");
})
//2.自定义一个访问符号
var jq = jQuery.noConflict();
jq(function(){
	alert("hello");
})
 
posted @ 2021-02-22 16:51  天午正阳  阅读(85)  评论(0编辑  收藏  举报