如何使用javascript处理嵌套的ULs
当涉及嵌套的如何使用javascript处理嵌套的ULs,javascript,html,css,Javascript,Html,Css,当涉及嵌套的时,我在重写页面中的所有锚点时遇到问题 我们在Chrome中使用(锚定)时遇到了问题,因此我将锚定重写为,并在其上使用单击处理程序。 除了:嵌套的开始时,它前面的(未关闭的)结束于嵌套列表的末尾,而不是开头 有什么想法吗? (这需要跨越数百页,因此一次性解决方案并非真正的解决方案) 如果你能提供HTML和一个代码片段,这样我们就可以看到它的实际应用,这将有助于我为没有直接解决这个问题而道歉,但是为什么你需要更改chrome的元素呢?什么bug导致您需要这样做?你有没有在chrome上
时,我在重写页面中的所有锚点时遇到问题
我们在Chrome中使用
(锚定)时遇到了问题,因此我将锚定重写为
,并在其上使用单击处理程序。
除了:嵌套的
开始时,它前面的
(未关闭的)结束于嵌套列表的末尾,而不是开头
有什么想法吗?
(这需要跨越数百页,因此一次性解决方案并非真正的解决方案)
如果你能提供HTML和一个代码片段,这样我们就可以看到它的实际应用,这将有助于我为没有直接解决这个问题而道歉,但是为什么你需要更改chrome的元素呢?什么bug导致您需要这样做?你有没有在chrome上的其他地方发布问题来解决这个问题?我们有一个使用框架的文档站点,我们无法更改它。一旦进入框架,锚就不能在铬合金中工作。我来做一把小提琴。需要几分钟这是一个垃圾桶。现在您必须多次单击“查看链接”链接才能运行该函数。但在我的页面中并非如此。在实际代码中,它被包装在document.onload函数中。如果你能提供HTML和一个代码片段,这样我们就可以看到它的实际应用,这将有助于我为没有直接解决这个问题而道歉,但是为什么你需要更改chrome的元素呢?什么bug导致您需要这样做?你有没有在chrome上的其他地方发布问题来解决这个问题?我们有一个使用框架的文档站点,我们无法更改它。一旦进入框架,锚就不能在铬合金中工作。我来做一把小提琴。需要几分钟这是一个垃圾桶。现在您必须多次单击“查看链接”链接才能运行该函数。但在我的页面中并非如此。在实际代码中,它被包装在document.onload函数中。
function see() {
var lists=document.getElementsByTagName('LI'); //all li
for (var i=0; i<lists.length; i++) {
var hrf0=lists[i].innerHTML;
if (lists[i].childNodes.length>0 && hrf0.indexOf('#')!=-1) {
var testnode0=lists[i].innerHTML;
var testnode=lists[i].children[0].innerHTML;
var testnode2=testnode.trim();
var firstchar = testnode0.charAt(0);
if (firstchar=='<' && testnode0.search('http://')<0 ) {
var linktext=lists[i].children[0].innerHTML;
var hrf3=lists[i].children[0].href;
var hrf2=hrf3.split('#')[1]; //target
lists[i].removeChild(lists[i].children[0]); //remove a
var para = document.createElement('span');
lists[i].appendChild(para);
var newlinktext = document.createTextNode(linktext);
lists[i].children[0].appendChild(newlinktext);
lists[i].children[0].setAttribute("id", "a" + i);
lists[i].children[0].setAttribute("data-link", hrf2);
lists[i].children[0].setAttribute("class", 'newanchor');
lists[i].children[0].style.cursor="pointer";
document.getElementById('a' + i).addEventListener('click', gothere, false);
}
}
}
}
function gothere() {
var link=this.getAttribute('data-link');
var element = document.getElementById(link);
element.scrollIntoView();
}