![](/img/trans.png)
[英]How to open a new window or tab via javascript in windows phone 7 browser
[英]How to open only external links in a new browser window via JavaScript?
我知道这是一个普遍的要求,并且有很多答案。 如果有人可以提供正确的脚本,该脚本仅在新窗口中打开HTML文件中的外部链接,我将不胜感激。
您可以为此使用jQuery:
$(document).ready(function(){
$("a[href^='http']:not([href*='"+location.hostname+"'])").attr("target","_blank");
});
它应同时匹配http和https链接。
我在自己的网站上使用了一些JavaScript。 然后,我有一个样式设置来修改链接(它有点像MSDN那样添加了一点图像/图像。使链接在新页面中打开也可以通过修改target属性来实现。
if (document.links) {
for (var i = 0; i < document.links.length; i++) {
l = document.links[i].href;
if (l.indexOf('http://www.mysite.com')!=0 &&
l.indexOf('http://udv.mysite.com')!=0 &&
l.indexOf('http://')==0 ) {
c = document.links[i];
if (c.className == "dontModify") continue;
c.className = c.className + " external";
if (c.title != "") {
c.title = "External link: " + c.title;
}
}
}
}
特定的代码将确定您是否使用纯DOM脚本或任何Javascript框架。 但通常,这是您要做的:
为所有锚设置一个onclick回调。
在您的回调中,检查链接的href
属性是否转到外部站点。 您可以使用多种方法来执行此操作,但是最简单的方法可能是URL上的简单正则表达式。
如果不是外部的,则允许链接正常进行(即返回true等)。
如果是外部的,请在新窗口中打开,然后返回false。
用Javascript打开一个新窗口很容易:
window.open('http://www.google.com');
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.