-1
的document.getElementById錯誤的document.getElementById錯誤
Drupal.behaviors.Menu = {
attach: function() {
var url = window.location.href;
var baseUrl = Drupal.settings.baseUrl;
var page1 = baseUrl+'/path/page1';
var page2 = baseUrl+'/path/page2';
var page3 = baseUrl+'/path/page3';
if($(".classname").length < 3) {
$("#hook").append("<a class='classname' href='' id='page1_id'>page 1</a>");
$("#hook").append("<a class='classname' href='' id='page2_id'>page 2</a>");
$("#hook").append("<a class='classname' href='' id='page3_id'>page 3</a>");
}
if(url == baseUrl+'/path') {
document.getElementById("page1_id").href = page1;
document.getElementById("page2_id").href = page2;
document.getElementById("page2_id").href = page3;
}
}
};
請不要第1頁之間的混淆是(VAR)和page1_id是(ID)。
在上面的函數中我知道它是if語句附近的一個錯誤 if(url == base ...) 這是確切的位置,它會出錯。 所以想知道我在哪裏犯了錯誤(錯誤是這樣的下面)
- >當我打開該特定頁面,這些菜單鏈接是完美掛鉤,當我點擊頁面1它完美地打開。
問題是我打開的任何頁面,第一次繼續接下來的兩頁。 就像我點擊第一頁,第二頁或第三頁(仍然顯示第二頁)。頁面刷新後
如果我點擊第3頁第一次,接下來的第1頁第2頁或(它仍然顯示第3頁)。 作爲document.getElementById僅保存前一個URL。
非常感謝。
有點讓人迷惑不已,你可以用一個最小的和可驗證的例子來演示你的錯誤嗎? – jdmdevdotnet
混合使用JQuery和Javascript通常是一個糟糕的主意,您可以通過執行'$(「#id」)' – OneMoreQuestion
通過查詢中的ID來選擇一個元素。不,它不是,您只需要記住在處理元素jquery並解開它們來處理它們作爲元素。 jQuery中沒有任何神奇的東西會突然讓其餘的javascript表現出不同的表現。 – spectras