所以我将网页从基本结构迁移到WordPress,其中一个页面有一个目录。 ToC有加号,允许你扩展ToC的不同区域,当你点击链接而不是什么时,身体正确滚动,但整个页面的实际HTML标签不会向上滚动。
所以基本上,这是一个非常粗略的模拟页面的布局,如
<html overflow-y: scroll; margin-left/right: auto; width: 1235px;>
<body overflow-y: scroll>
...primary content here centered by html css
</body>
</html>
所以基本上,正确地点击加号使用href标签来设置BODY滚动窗口,但是,由于html文档也没有滚动,所以它没有正确地将页面对齐到你刚才的部分的标题点击导航到。以下是加号使用的openClose函数的代码:
function openClose(theName, menuArray, theID) {
for(var i=0; i < menuArray.length; i++) {
if (menuArray[i] == theID) {
if (document.getElementById(theID).style.display == "block") {
document.getElementById(theID).style.display = "none";
document.getElementById("tick_"+menuArray[i]).innerHTML = "+";
eraseCookie(theName); }
else {
document.getElementById(theID).style.display = "block";
document.getElementById("tick_"+menuArray[i]).innerHTML = "-";
newCookie(theName,menuArray[i],exp); }
}
else {
document.getElementById(menuArray[i]).style.display = "none";
document.getElementById("tick_"+menuArray[i]).innerHTML = "+"; }
}
$(window).scrollTop(0); // this is just one of many examples
}
scrollTop
只是我尝试过的众多示例中的一个,可以将HTML文档滚动到顶部,但是,似乎什么也没做。我不是想滚动身体,我想滚动主垂直滚动条。我想在openClose on click函数中,我会在最后放置这样一个函数,以便在导航到on click事件定义的位置后,将整个文档向上滚动。但同样,没有任何反应。我错过了一些简单的东西吗?
我用Google搜索并找到了另一个页面Scroll to the top of the page using JavaScript/jQuery?,但没有一个例子有效。
答案 0 :(得分:0)
除非你定义它,否则你不能在wordpress中使用$ sign for jquery。 swop用'&34; jQuery&#34;所以在每个地方你都会使用$,使用&#34; jQuery&#34;。如果你查找安全模式jquery,还有其他方法。
同样使用console - chrome / firefox =右键单击页面元素并选择&#34;检查元素&#34;您将在出现的窗口的顶部菜单上看到控制台。它将显示js错误。在上面的代码中,您将看到&#34; undefined不是函数&#34;一个经典的jQuery没有加载错误(或者你与$符号冲突,需要使用安全模式jquery),你会看到一个&#34;意外的&#34;错误,因为你缺少一些括号。
function openClose(theName, menuArray, theID) {
for(var i=0; i < menuArray.length; i++) {
if (menuArray[i] == theID) {
if (document.getElementById(theID).style.display == "block") {
document.getElementById(theID).style.display = "none";
document.getElementById("tick_"+menuArray[i]).innerHTML = "+";
eraseCookie(theName);
} else {
document.getElementById(theID).style.display = "block";
document.getElementById("tick_"+menuArray[i]).innerHTML = "-";
newCookie(theName,menuArray[i],exp);
}
} else {
document.getElementById(menuArray[i]).style.display = "none";
document.getElementById("tick_"+menuArray[i]).innerHTML = "+";
}
}
jQuery(window).scrollTop(); // this is just one of many examples
};