我在JavaScript中创建了一个多URL开启工具,用于打开文本区域中新选项卡中的所有URL。这工作正常,它打开新选项卡中的所有URL,但问题是当用户在文本区域中放置新列表时,新URL替换旧URL,即新URL打开在旧的URL打开的相同选项卡中替换旧网站。
这是我的JavaScript代码:
<script type="text/javascript">
<!--
function OpenURL(txid) {
var lines;
var TA = document.getElementById(txid).value;
if(document.all) { // IE
lines = TA.split("\r\n");
}
else { //Mozilla
lines = TA.split("\n");
}
for(var i=0; i<lines.length; i++) {
if(/^([a-z]([a-z]|\d|\+|-|\.)*):(\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900- \uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?((\[(|(v[\da-f]{1,}\.(([a-z]|\d|-|\.|_|~)|[!\$&'\(\)\*\+,;=]|:)+))\])|((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=])*)(:\d*)?)(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*|(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)|((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)|((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)){0})(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(lines[i])) {
if(lines[i]!=''){
window.open(lines[i], 'example' + i);
}
} else {
if(lines[i]!=''){
var openurl="http://"+lines[i];
window.open(openurl, 'example' + i);
}
}
}
}
-->
</script>
我不擅长使用JavaScript。请帮我纠正代码。
任何帮助都会受到极大的关注..
答案 0 :(得分:1)
您使用的是相同的窗口名称。在OpenURL函数之外定义一些变量'C'并更改window.open以使用它。
var C = 1;
function OpenURL( txtid ) {
...
window.open(openurl, 'example' + (C++))
...
}
答案 1 :(得分:0)
我想你想要创建一个Javascript来启用新标签中的开放链接..谷歌搜索这个问题带来了这个post 这可能会有所帮助。