小问题。我有一些 JavaScript,当我单击某个功能 block 时,它会更改某些 div 的内容。从我下面的代码可以看出,在#pubcontent处添加了一些到页面的链接。
$("#publications").click(function(){
$("#content").html('<iframe id="idIframe" src="publication/index.html" style="height:594px;width:98%;"></iframe>');
$("#titlepage").html('<img src="../images/pageline.png" style="width:2px; height:50px; vertical-align:middle"/>Home > Publications');
$("#researchcontent").html('');
$("#pubcontent").html('<ul><li><a id="2013" href="#">2013</a></li><li><a id="2012" href="#">2012</a></li><li><a id="2011" href="#">2011</a></li><li><a id="2010" href="#">2010</a></li><li><a id="2009" href="#">2009</a></li><li><a id="2008" href="#">2008</a></li></ul>');
});
这正在工作。但现在,我在同一个 JavaScript 文件中添加了一些其他代码,当我单击 #pubcontent 中的链接时,应该执行这些代码。但是当我点击链接时什么也没有发生。这段代码是:
$("#2013").click(function(){
$("#content").html('<iframe id="idIframe" src="publication/index.html#2013" style="height:594px;width:98%;"></iframe>');
$("#titlepage").html('<img src="../images/pageline.png" style="width:2px; height:50px; vertical-align:middle"/>Home > Publications > 2013');
总结一下。我按 x 并显示 y。如果我按 y 中的链接,我想看到 z。但我找不到让“z”部分出现的方法。我不确定这个解释是否有帮助..但是有人有建议吗?
最佳答案
对动态添加的元素使用委托(delegate):
$("#pubcontent").on('click',"#2013",function(){...});
当然,ID 在上下文页面中必须是唯一的,因此 ID 为“2013”的元素应该是唯一的。
关于javascript - 带有 div 的 javascript 内 iframe 的 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17442703/