弹出窗口上的图像链接在Chrome扩展程序中不起作用

时间:2014-01-08 08:17:16

标签: javascript html google-chrome google-chrome-extension

弹出窗口上的图像链接不起作用。 例如,它就像这段代码。

<a href="https://test.com/"><img src="test.png"></a>

我通过Javascript上的“onclick”处理这个问题。

是否有正常的方法与图像正常联系?

1 个答案:

答案 0 :(得分:0)

由于您 not allowed 有内联事件处理程序,您可以添加外部JS文件(例如popup.js)并注册click事件的侦听器(使用addEventListener())。 E.g:

<强> popup.html:

<!DOCTYPE html>
<html>
<head>
    ...
    <script type="text/javascript" src="popup.js"></script>
</head>
<body>
    ...
    <a href="https://test.com/"><img src="test.png"></a>
</body>
</html>

<强> popup.js:

document.addEventListener('DOMContentLoaded', function() {

    /* Get all images that are direct descendants of anchor elements */
    var imgsInAs = document.querySelectorAll('a > img');

    /* For each such img element... */
    [].slice.call(imgsInAs).forEach(function(img) {

        /* ...register a listener for the 'click' event that... */
        img.addEventListener('click', function(evt) {

            /* ...simulates a 'click' on its parent-node 
             * (i.e. the anchor element) */
            evt.preventDefault();
            img.parentNode.click();
        });
    });
});