jQuery使用
符
号
作
为
j
Q
u
e
r
y
的
简
写
。
其
他
一
些
J
a
v
a
S
c
r
i
p
t
框
架
包
括
:
M
o
o
T
o
o
l
s
、
B
a
c
k
b
o
n
e
、
S
a
m
m
y
、
C
a
p
p
u
c
c
i
n
o
、
K
n
o
c
k
o
u
t
、
J
a
v
a
S
c
r
i
p
t
M
V
C
、
G
o
o
g
l
e
W
e
b
T
o
o
l
k
i
t
、
G
o
o
g
l
e
C
l
o
s
u
r
e
、
E
m
b
e
r
、
B
a
t
m
a
n
以
及
E
x
t
J
S
。
其
中
某
些
框
架
也
使
用
符号作为jQuery的简写。 其他一些 JavaScript 框架包括:MooTools、Backbone、Sammy、Cappuccino、Knockout、JavaScript MVC、Google Web Toolkit、Google Closure、Ember、Batman 以及 Ext JS。 其中某些框架也使用
符号作为jQuery的简写。其他一些JavaScript框架包括:MooTools、Backbone、Sammy、Cappuccino、Knockout、JavaScriptMVC、GoogleWebToolkit、GoogleClosure、Ember、Batman以及ExtJS。其中某些框架也使用符号作为简写(就像jQuery),如果您在用的两种不同框架正在使用相同的简写符号。
则会导致其停止运行。
jQuery的团队考虑到了这个问题,并实现了nonconflict()方法。
下面来说一下noconflict()方法
noconflict()方法会释放$标识符的控制,这样其他的脚本就可以使用它了。
实例:
当然,您仍然可以通过全名替代简写的方来使用jQuery:
$.noConflict()
jQuery(document).ready(function(){
jQuery(“button”).click(function(){
jQuery(“p”).text(“jQuery仍在运行!”);
});
});
实例1
如果你的jQuery代码块使用$ 简写,并且您不愿意改变这个快捷方式,那么您可以把 $ 符号作为变量传递给 ready 方法。这样就可以在函数内使用 $ 符号了 - 而在函数外,依旧不得不使用 “jQuery”:
<!DOCTYPE html>
<html>
<head>
<script src="/jquery/jquery-1.11.1.min.js"></script>
<script>
$.noConflict();
jQuery(document).ready(function($){
$("button").click(function(){
$("p").text("jQuery 仍在运行!");
});
});
jQuery(document.ready(function($){
$("button").click(function(){
$("p").text("jQuery仍在运行!")
});
});
</script>
</head>
<body>
<p>这是一个段落。</p>
<button>测试 jQuery</button>
</body>
</html>