-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