2012-02-05 11 views
0

JavaScriptで複数のURLオープナーを作成して、テキストエリアから新しいタブのすべてのURLを開きます。これはうまくいき、新しいタブのすべてのURLを開きますが、問題はユーザーがテキストエリアに新しいリストを置き、新しいURLが古いURLを置き換えた場合です。つまり、新しいURLが同じタブに表示されます。古いウェブサイト。私はJavaScriptでよくないよ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コードです。コードを修正するのを手伝ってください。

すべてのヘルプは大幅に簡素化されます..

答えて

1

あなたは同じウィンドウ名を使用しています。変数「C」をOpenURL関数の外に定義し、それを使用するようにwindow.openを変更します。

var C = 1; 
function OpenURL(txtid) { 
    ... 
    window.open(openurl, 'example' + (C++)) 
    ... 
} 
+0

ありがとうございます。その完全に今働く –

0

は、私はあなたが新しいタブで開くリンクを可能にするJavascriptを作成したいと思います..この質問にGoogle検索が助けになるかもしれません。このpost もたらしました。

関連する問題