jQuery在<a>右键单击事件中获取元素的主机名



当我右键单击一个或元素时,我想获取HREF的扩展名和主机名。我尝试了以下代码,但是我得到了"未定义"

$(document).mousedown(function(e) {
        if (e.which == 3) {
            var tag = e.target.nodeName;
            var href = e.target.href;
            if (tag == 'A') {
                thelink = e.target.href;
                console.log(href.hostname);
            }
            if (tag == 'IMG') {
                thelink = e.target.src;
                console.log(href.hostname);
            }
        }
    });

您可以参考:

URL接口代表提供用于创建对象URL的静态方法的对象。

$(document).mousedown(function(e) {
    if (e.which == 3) {
        var tag = e.target.nodeName;
        var thelink = undefined;
        if (tag == 'A') {
            thelink = e.target.href;
        }
        if (tag == 'IMG') {
            thelink = e.target.src;
        }
        
        //
        // if thelink then get the hostname...
        //
        if (thelink) {
            //
            // convert string to URL
            //
            var url = new URL(thelink);
            console.log(url.hostname);
        }
    }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<img src="https://dummyimage.com/200x200/000/fff">

相关内容

  • 没有找到相关文章

最新更新