我刚刚创建了一个目标为_self
但是现在我有太多的链接,我想将所有链接目标更改为_blank
,这对我来说很难。是否有任何javascript适用于所有只写1次?
因为我的代码太长而且需要花费太多时间来更改所有链接。有诀窍吗?
像这样<a href="http://www.google.com"></a>
<a href="http://www.facebook.com"></a>
<a href="http://www.gmail.com"></a>
<a href="http://www.twitter.com"></a>
<a href="http://www.stackoverflow.com"></a>
<a href="http://plus.google.com"></a>
答案 0 :(得分:17)
将其放入<head>
<base target="_blank">
除非指定 target
,否则它将使新页面中的所有网址都打开。
这是一项仅限HTML5的功能,我是从Google's io-2012-slides slide package了解到的。
答案 1 :(得分:7)
为了回答你的问题,jQuery使这很简单:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>
$(function() {
$('a[href]').attr('target', '_blank');
});
</script>
如果没有<a>
属性,则不会修改任何href
代码。
答案 2 :(得分:1)
如果您无法使用HTML编辑器执行简单的find and replace
,则可以使用jQuery执行以下操作:
$('a').click(function() {
$(this).attr('target', '_blank');
});
对于在新窗口或新标签中点击并打开的每个target="_blank"
,这将自动执行a
(您无法控制此操作,具体取决于用户的浏览器设置)。
希望这会有所帮助!!
答案 3 :(得分:1)
在简单的JS中它也很简单:
var links = document.getElementsByTagName('a');
for (var i=0, len=links.length; i < len; i ++) {
links[i].target = '_blank';
}
(将此脚本放在收看的</body>
代码之前,或者在页面上的所有<a>
代码之后的任何情况下。)
答案 4 :(得分:1)
我必须处理这个很多次。仅供记录:
我认为没有必要让javascript执行此任务,但这是另一种方法,相反,您可以使用编辑器的查找/替换功能并执行此类操作(前提是您的链接是以那种格式):
打开您的编辑器并查找<a href
:
在替换字段中输入<a
target="_blank"
href
。
替换。
或者,您可以通过查找.com">
并将其替换为.com" target="_blank">
来将其附加到代码的末尾。您可以在具有查找/替换功能的所有编辑器上执行此操作。这只是找到模式以及如何替换它们的问题。