2011-02-26 111 views
0

我向菜單添加了「魔術線條」效果,但它在管理界面中導致問題。 http://screencast.com/t/HxTs3ZLlT按鈕顯示不會打開內嵌設置,因爲它應該。jQuery腳本與Drupal 7的AJAX衝突?

當覆蓋加載螢火蟲顯示錯誤:

$( 「#主菜單鏈接。主動A」)位置()爲null

控制檯的全屏截圖:http://screencast.com/t/im1NKS025gJ9

而腳本本身是從.info文件中調用的:

(function ($) { 

    Drupal.behaviors.magicLine = { 
     attach: function(context) { 

      // Lava Lamp Meny Effect 

      var $el, leftPos, newWidth, 
       $mainNav = $("#main-menu-links"); 

      $mainNav.append("<li id='magic-line'></li>"); 
      var $magicLine = $("#magic-line", context); 

      $magicLine 
       .width($("#main-menu-links li.active").width()) 
       .css("left", $("#main-menu-links li.active a").position().left) 
       .data("origLeft", $magicLine.position().left) 
       .data("origWidth", $magicLine.width()); 

      $("#main-menu-links li a").hover(function() { 
       $el = $(this); 
       leftPos = $el.position().left; 
       newWidth = $el.parent().width(); 
       $magicLine.stop().animate({ 
        left: leftPos, 
        width: newWidth 
       }); 
      }, function() { 
       $magicLine.stop().animate({ 
        left: $magicLine.data("origLeft"), 
        width: $magicLine.data("origWidth") 
       }); 
      }); 
     } 
    }; 


})(jQuery); 

我不是程序員,所以我不知道如何解決這個問題。

回答

1

控制檯消息:$(「#主菜單鏈接。主動A」)位置()爲null

通常意味着jQuery的找不到那個元素(id爲「主錨元素-menu-links「和class =」active「)。你確定活動課被授予你的主菜單鏈接嗎?

+0

我得到了那些沒有被標記爲「活動」並早期修復它的頁面,但在這種情況下,管理員使用模式窗口,所以「活動」類仍然存在。 – 2011-03-02 09:31:37