2015-01-08 41 views
1

幾個星期前,我在wordpress網站上添加了一些同位素,並且一切正常。但是,在對網站進行了一些更改之後,我現在正在收到一條錯誤消息,並且正在努力弄清楚導致它的原因,因爲相同的代碼在JSFiddle中工作正常。 http://jsfiddle.net/ttf5776r/12/jQuery同位素錯誤。在Wordpress中停止工作

我在錯誤控制檯收到我的網站時,該錯誤信息是:

TypeError: i.data(...) is undefined ...)n[t]=s||"original-order"!==t?rt:i.data(this,"isotope-sort-data")[t];i.da...

我已經想通了,如果我刪除下面的代碼,錯誤信息將停止出現和同位素的作品,但沒有按由於已刪除的代碼,不會將選定的框放入左上角。

$container 
    .isotope('updateSortData', $this.parent()) //this should be above the 'return false;' to make the selected photo go to top left corner but it decided to break and havem't had time to find fix. - LOL 08-01-2015 
    .isotope('updateSortData', $previousSelected) 
    .isotope(); 

不幸的是,我不記得自此工作以來所做的所有更改,但我確信沒有任何JQuery修正。

任何人都可以幫我解決問題嗎?下面

代碼:

的functions.php

function add_isotope() { 
    wp_register_script('isotope', 'http://isotope.metafizzy.co/v1/jquery.isotope.min.js', array('jquery')); 
    wp_enqueue_script('isotope'); 
} 

add_action('wp_enqueue_scripts', 'add_isotope'); 

function add_jsscripts() { 
    wp_register_script('jsscripts', get_template_directory_uri() . '/js/scripts.js', array('jquery')); 
    wp_enqueue_script('jsscripts'); 
} 

add_action('wp_enqueue_scripts', 'add_jsscripts'); 
+1

這是不夠的信息。你如何加載你的腳本?你改變了什麼?發佈其他代碼。 – Macsupport

+0

我已經添加了代碼來顯示我如何加載腳本。我不知道我做了什麼改變。這裏和那裏只是小修改。我沒有添加任何主要內容,也沒有爲此腳本更改JQuery。 – LeeTee

+0

你在頁面中添加了jQuery嗎? – OnlyMAJ

回答

0

你的錯誤是指縮小的一個來源。第一步是切換到使用非縮小的源文件,以便變量具有其原始名稱。

在這裏找到的錯誤點( 「鑰匙」 變爲 「T」 等):

updateSortData : function($atoms, isIncrementingElemCount) { 
    var instance = this, 
     getSortData = this.options.getSortData, 
     $this, sortData; 
    $atoms.each(function(){ 
    $this = $(this); 
    sortData = {}; 
    // get value for sort data based on fn($elem) passed in 
    for (var key in getSortData) { 
     if (!isIncrementingElemCount && key === 'original-order') { 
     // keep original order original 
     sortData[ key ] = $.data(this, 'isotope-sort-data')[ key ]; 
     } else { 
     sortData[ key ] = getSortData[ key ]($this, instance); 
     } 
    } 
    // apply sort data to element 
    $.data(this, 'isotope-sort-data', sortData); 
    }); 
}, 

你得到的錯誤, 「i.data()是不確定的」,從而成爲「 $ .data()未定義「 - 這似乎表明.data()插件未正確加載,或者(更可能)傳遞給同位素的變量實際上並不是jQuery庫的句柄。檢查你如何加載和初始化同位素。