当我尝试使用$("#div_id")在$(document).ready它返回NULL,但是当我使用jQuery("#div_id")它返回实际的对象!
为什么会这样?
更新:我尝试了noConflict方法而没有获得任何提示.
jQuery.noConflict()
function (a,b){return new c.fn.init(a,b)}
$.noConflict();
TypeError: Object function ()
{
return document.getElementById.apply(document, arguments)
} has no method 'noConflict'
Run Code Online (Sandbox Code Playgroud)
更新2:
$(document).ready(function() {
debugger;
});
<input type="text" id="test" name="test" value="123" />
Run Code Online (Sandbox Code Playgroud)
当我在控制台中运行以下代码时,我得到了这些结果:
$("#test").val()
TypeError: Cannot call method 'val' of null
jQuery("#test").val()
"123"
Run Code Online (Sandbox Code Playgroud)
谢谢
Gra*_*ham 17
请参阅jQuery.noConflict().您网页上的其他JavaScript库是否可以使用该$变量?
$只是一个用于别名jQuery和变量的变量,任何东西都可以分配给它.
$也用在Prototype.js中,这是一个像jQuery这样的javascript框架.可能是您的项目还包含对此框架的引用.
有关美元原型如何运作的更多信息,请转到此处.
您可以将这两个与noConflict语句一起使用,如其他答案中所述.我们在我们的一个项目中执行此操作,该项目使用遗留原型代码的$(元素)和新jQuery代码的jQuery(元素).