2017-07-13 39 views
0

我在我的HTML中通過WordPress短代碼構建了一些鏈接。不幸的是,這個簡碼不包括目標屬性,這種方式我不能使鏈接在新標籤中打開。按類獲取元素並在新標籤中打開它

我不是一個程序員,我正在尋找一個小JS來打開某個特定類下的某些鏈接,並在新選項卡中打開。

喜歡的東西:

if ("a" tag is under "div.newTab" class) onClick {window.open in a new tab} 

希望你們理解!

謝謝大家。

+0

[看這裏](https://stackoverflow.com/questions/15880468/how-to-在新窗口中獲得一個dom元素) –

+0

您是否需要在點擊時評估該類,或者可以該鏈接將被標記爲在新窗口中打開,具體取決於它是否具有加載類。 – Santi

回答

0
window.onload = function() 
{ 
    var allLinks = document.querySelectorAll("div.newTab a"); 
    for(var i=0;i<allLinks.length;i++) 
    { 
     var currentLink = allLinks[i]; 
     currentLink.setAttribute("target","_blank"); 
    } 
} 
+0

謝謝Ganesan !!!!它完美的工作! :D –

0

您可以通過循環遍歷指定類下的所有鏈接來設置target屬性。

Demo

(function(){ 
 

 
\t $(".newTab a").each(function(i, obj){ 
 
    
 
    \t obj.setAttribute("target", "_blank"); 
 
    
 
    }); 
 
\t 
 
})();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div class="newTab"> 
 
    <a href="https://bhansa.github.io">bhansa</a> 
 
    <a href="http://google.com">Google</a> 
 
</div>

0

如果你想避免操縱了很多網頁上的鏈接,你可以使用jQuery趕在.newTab的div和行動鏈接的點擊在他們。

例HTML

<div class="someClass"> 
    <a href="http://google.com">Google</a> 
</div> 

<div class="newTab"> 
    <a href="http://wikipedia.org">Wikipedia</a> 
</div> 

的javascript

$(document).ready(function($) { 
    $('.newTab a').click(function(event){ 
     event.preventDefault(); 
     window.open((this).href, '_blank'); 
    }); 
}); 

工作jsFiddle

0
$(document).on('click', 'div.newTab a', function(e){ 
    e.preventDefault(); 
    var url = $(this).attr('href'); 
    window.open(url, '_blank'); 
}); 
+1

儘管這段代碼可能會回答這個問題,但提供關於如何解決問題和/或爲什麼解決問題的額外上下文會提高答案的長期價值。 – Badacadabra

相關問題