在我的 Ratchet 项目中实现snap.js
后,我在使用 jQuery 访问我的 div
元素时遇到问题,有谁知道我为什么以及如何解决这个问题?
document.getElementById('mydivId').innerHTML //THIS WORKS
$('#mydivId').html() //THIS DOESN'T WORK
我已经包含了jquery.js并实现了$(document).ready(function(){});
我收到"未捕获的类型错误:无法调用 null 的'ready'方法"
尝试这样的东西,而不是$使用jQuery,所以重命名任何东西。
jQuery( document ).ready(function( $ ) {
// Code that uses jQuery's $ can follow here.
});
其他替代方案
var j = jQuery.noConflict();
// Do something with jQuery
j( "div p" ).hide();
好的,我找到了问题所在...事实证明,Snap.js也像Jquery一样使用$别名,所以这就是产生冲突的原因。在索引上的脚本标记中.html我重命名了所有出现的 $ 并将其更改为 $$。
// Helper
$$ = function(id){
return document.getElementById(id);
},
....
$$('right-drawer').classList.add('active-drawer');
....
$$('toggle-left').addEventListener('click', function(){
snapper.open('left');
});
等等。