2
<script type="text/javascript">

  //add an entry to the _spBodyOnLoadFunctionNames array
  //so that our function will run on the pageLoad event
  _spBodyOnLoadFunctionNames.push("rewriteLinks");

  function rewriteLinks() {
    //create an array to store all the anchor elements in the page
    var anchors = document.getElementsByTagName("a");

    //loop through the array
    for (var x=0; x<anchors.length; x++) {
      //does this anchor element contain #openinnewwindow?
      if (anchors[x].outerHTML.indexOf('#openinnewwindow')>0) {
        //store the HTML for this anchor element
        oldText = anchors[x].outerHTML;

        //rewrite the URL to remove our test text and add a target instead
        newText = oldText.replace(/#openinnewwindow/,'" target="_blank');

        //write the HTML back to the browser
        anchors[x].outerHTML = newText;
      }
    }
  }

</script>

以前に seattle.master ファイルに入れたこのコードがあります。リンクを編集するときのクイック起動で、Web サイトアドレスの後に #openinnewwindow を置きます。「リンクを試す」で、これはウェブサイトを正しく開きます。私の問題は、それを保存するときです。新しいウィンドウで開かないリンクをクリックします。なぜこれが起こっているのでしょうか?

4

1 に答える 1

1

このコードが機能するには、発行を有効にする必要があることに気付きました。

于 2014-04-28T15:26:36.580 に答える