Snap.js JQuery冲突?

时间:2013-11-12 14:08:34

标签: jquery snapjs ratchet-bootstrap

在我的Ratchet项目中实现div之后,我无法使用jQuery访问我的snap.js元素,是否有人知道为什么以及如何解决此问题?

document.getElementById('mydivId').innerHTML   //THIS WORKS
$('#mydivId').html()  //THIS DOESN'T WORK

我已经包含了jquery.js并实现了$(document).ready(function(){});

我得到“Uncaught TypeError:无法调用方法'就绪'为null”

2 个答案:

答案 0 :(得分:0)

好的,我发现问题是什么......原来Snap.js也使用像Jquery这样的$别名,这就是造成冲突的原因。在index.html的脚本标记中,我重命名了所有出现的$并将其更改为$$。

    // Helper
    $$ = function(id){
        return document.getElementById(id);
    }, 
                ....
                $$('right-drawer').classList.add('active-drawer');
                ....
                $$('toggle-left').addEventListener('click', function(){
                    snapper.open('left');
                 });

等等。

答案 1 :(得分:0)

尝试这样的事情,而不是使用$ 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();