簡體   English   中英

無法在新標簽頁中打開鏈接

[英]not able to open links in a new tab

我需要驗證頁面上的很多鏈接。 而不是自己打開每個鏈接。 這就是我所做的。

使用firequery插件對頁面進行jquer化。 然后我在螢火蟲中鍵入以下代碼。

a = $('a');
$.each(a, function(i,val){
  $val = $(val);
  $val.attr({target: '_blank'});
  $val.trigger('click');
});

即使觸發我,也不會單擊鏈接。 為什么?

您可以這樣做,好吧,您會遇到彈出窗口阻止程序的問題,但是,如果這僅是出於調試目的,您可以直接禁用阻止程序,僅此而已。

a = $('a');
$.each(a, function(i,val){
  window.open(val, '_blank');
});

這是整個代碼,對我有用。 實際上,我沒有在服務器上進行測試,只是在桌面上檢查了html文件。 即使我說要顯示彈出窗口,Firefox也不允許顯示彈出窗口,但是IE可以選擇允許本地文件彈出窗口,並且它可以工作,為google和yahoo打開兩個窗口。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
    <head>
        <meta http-equiv="content-type" content="text/html; charset=utf-8" />
        <script type="text/javascript" src="jquery-min.js"></script>
    </head>
    <body>
        <a href="http://www.google.com">aa</a>
        <a href="http://www.yahoo.com">bb</a>
        <script>
            $(document).ready(function() {
                    a = $('a');
                    $.each(a, function(i,val){
                    window.open(val, '_blank');  
                });
            });
        </script>
    </body>
</html>

trigger('click')無效。 我最近遇到了同樣的問題,並通過使用click()解決了它。

該代碼對我有用:

$("a").each(function(i, val) { window.open(val.href); });

但是,Chrome阻止了此代碼,因為它試圖一次打開約20個彈出窗口,但我可以看到它確實試圖打開它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM