网页由侧边栏导航和用于显示内容的 iframe 组成。导航包含旨在更改 iframe 内容的链接。但是,旨在更改 iframe 源代码的 JavaScript 函数无法正常工作。
主要问题源于在 onclick 事件处理程序中省略执行 getContent 函数所需的括号。
避免内联事件处理程序
强烈建议不要使用内联事件处理程序(例如 onclick、onmouseover),因为它会导致意大利面条式代码、代码重复、可扩展性问题以及偏离最佳实践。
分离 HTML 和 JavaScript
保留 HTML 和 JavaScript代码分开,以提高可读性并更易于维护。
禁用按钮的链接导航
如果使用类似按钮的元素的链接,请将其 href 属性设置为 # “”以防止其导航。
下面是修订后的代码,其中包含应用更正:
<br>function getContent() {<br> console.log("旧源是:" iFrame.src);<br> iFrame.src="LoremIpsum.html ";<br> console.log("新来源是:" iFrame.src);<br>}<p>// 获取按钮和 iframe 的引用<br>var btn = document.getElementById("btnChangeSrc");<br>var iFrame = document.getElementById ("contentFrame");</p><p>// 设置点击事件处理程序按钮<br>btn.addEventListener("click", getContent);<br>
以上是为什么我的 JavaScript 函数没有在链接单击时执行?的详细内容。更多信息请关注PHP中文网其他相关文章!