我看到了几个答案,但似乎无法弄清楚如何应用它们。
我的页面分为两个div。侧面导航div和主要div。在页面加载时,下面的js将html加载到主div中。加载后,该功能可用于在文档中跳转(通过导航)。
问题是,由于存在一些自引用点,因此HTML中也存在指向该函数的链接。
侧面导航功能可以正常工作,而HTML内的功能则不能。我以为这是种编译问题,但是我不太清楚如何正确地编译它。
这是JS:
Ctrler.loadPage = function(hash){
if(!hash){
var url = "filename.html";
var xhr= new XMLHttpRequest();
xhr.open('GET', url, true);
xhr.onreadystatechange= function() {
if (this.readyState!==4) return;
if (this.status!==200) return;
cur = this.responseText;
cur = cur.replace(/{{sitePath}}/g, jsPath.path);
document.getElementById('maindiv').innerHTML= cur;
$('#maindiv').html = this.responseText;
};
xhr.send();
}
else{
document.getElementById(hash).scrollIntoView();
window.scrollBy(0, -90);
}
}
编辑:我将填充div的行更改为此:
$compile(cur)($scope);
$('#maindiv').append(cur);
但是它仍然不起作用。它是第一次加载,但是ng-click仍然无效。
答案 0 :(得分:0)
我知道了。
添加$('#maindiv')
后,我需要编译cur
。不是cur