javascript - 移动旧的内联 JavaScript

标签 javascript html

我有一个小组件,可以在单击时打开一个窗口。问题在于它的内联 JavaScript,我知道它过时且丑陋。如何将其移至下方并保持相同的功能?这不是我的代码,我只是想学习:)我尝试通过其 ID 定位 a 标签,然后添加一个事件监听器,但随后出现错误,提示焦点未定义,并且链接仅使用其默认功能并带我到同一窗口中的 url。有什么指针吗?我非常感谢您的帮助!

<body>
    <a id="tower" href="http://static.slh.com/files//HUPARSR/Large_Gallery_02_HUPARSR_53800328_Exterior_-_Eiffel_tower_view_400x600_72.jpeg" 
    onClick='showPDF(this.href);return(false);'>
            Click here to see the Eiffel Tower.
    </a>
<script>
function showPDF(url) {
newwindow=window.open(url,'name','height=400,width=600,top=100,left=100,resizable');
if (window.focus) {newwindow.focus()}
}
</script>
</body>

最佳答案

a 元素中删除 onclick 并使用 JavaScript 附加事件监听器:

<script>
document.getElementById("tower").addEventListener("click", function() {
    showPDF(this.href);
    return false;
});
// ... your other code below ...
</script>

关于javascript - 移动旧的内联 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23233772/

相关文章:

javascript - CSS/JavaScript : multiple columns

javascript - execCommand中“粘贴为纯文本”的JavaScript技巧

HTML 文本区域边距

html - 如何使用 Bootstrap 垂直对齐表单?

javascript - 我如何确定在第一次加载时是否在 jQuery 中单击了某些内容?

javascript - JS 输入按键事件 - 无法读取 null 的属性 'addEventListener'

javascript - HTML 下拉菜单无法正常工作

javascript - 禁用向下滚动会破坏 fullpage.js 中的菜单链接

JavaScript : promise issue

javascript - Material-UI:如何将两个日期选择器放在同一行?