對於超鏈接<a>標簽,target屬性的設置是比較關鍵的,在不同的用戶場景下選用適合的新頁面載入方式,可以大大的提高訪客的體驗感。我們一般對target的設置可以挨個來,但如果我們需要在局部或者全局對所有的<a>標簽target屬性進行設置,那要怎么做呢?
╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱
╱╱
分割線在此
╲╲╲╲╲╲╲╲╲╲╲╲╲╲╲╲╲╲╲╲╲╲╲╲╲╲
★ 對整個頁面內所有<a>統一設置設置
如果我們需要對整個頁面內所有<a>標簽的target屬性都為‘_blank’,即點擊超鏈接之后以彈出新頁面的方式打開;
那么我們只需要在<head></head>里面加入如下這句代碼,就能夠實現。
<basetarget="_blank">
需要注意的是,如果我們需要對某個特定的超鏈接以不同的方式打開,那么可以在該<a>標簽內直接設置不同的target屬性值就可以了。(因為內聯設置的優先級高於外部的)
★
由於網頁的布局一般是分成幾個不同的內容塊,在不同的內容塊超鏈接<a>打開新頁面的方式也有些不同。因此這就涉及到對局部內<a>標簽的設置。
◇ 實現方法 自定義JS函數
示例代碼
<ahref="http://www.baidu.com">百度去</a> <ahref="http://www.sogou.com">搜狗去</a> <ahref="http://www.sina.com">新浪去</a> <fieldsetid="portionA"> <legend>局部<a></legend> <p>該容器內所有的target的屬性值為"_self"</p> <ahref="http://www.baidu.com">百度去</a> <ahref="http://www.sogou.com">搜狗去</a> <ahref="http://www.sina.com">新浪去</a> </fieldset> <script> function portionA(){ var aN = document.getElementById("portionA").getElementsByTagName("a"); for(var i =0; i < aN.length; i++){ aN[i].target ="_self";/*遍歷局部a標簽並設置target屬性值*/ } } portionA();//調用函數 </script>
◇ 實現方法 利用jQuery
提示
使用jQuery可獲取當前容器下(
無論有多少層容器嵌套
)所有的a標簽。
實現代碼
<fieldsetid="portionA"> <legend>局部<a></legend> <p>該容器內所有的target的屬性值為"_self"</p> <ahref="http://www.baidu.com">百度去</a> <ahref="http://www.sogou.com">搜狗去</a> <ahref="http://www.sina.com">新浪去</a> </fieldset> <scriptsrc="JS/jquery-3.1.1.min.js"></script> <!--要引入jQuery先--> <script> $(document).ready(function(){ $("#portionA").find("a").attr("target","_self"); /*使用find方法找到<a>標簽,然后使用attr方法設置屬性*/ }) </script>
提示
默認情況下,點擊超鏈接是在當前頁面打開新網頁,即" target='_self ' " ;