在 Sharepoint Online 中通过快速启动打开新窗口

Posted

技术标签:

【中文标题】在 Sharepoint Online 中通过快速启动打开新窗口【英文标题】:Open new window from quick launch in Sharepoint Online 【发布时间】:2014-03-05 23:49:19 【问题描述】:
<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 文件中然后在快速启动时,当我编辑链接时,我把#openinnewwindow 放在网站地址之后。在“尝试链接”上,这会打开正确的网站。我的问题是当我保存它时。然后单击它不会在新窗口中打开的链接。任何想法为什么会发生这种情况?

【问题讨论】:

+1 用于代码中的 cmets。您是否检查了生成的 HTML?脚本是否运行正常? 【参考方案1】:

我意识到要让这段代码工作,我需要启用发布。

【讨论】:

以上是关于在 Sharepoint Online 中通过快速启动打开新窗口的主要内容,如果未能解决你的问题,请参考以下文章

SharePoint Online 创建网站

如何在 Sharepoint 2016 中通过 Visual Web 部件更新项目后重新加载列表?

SharePoint Online 触发Teams审批

SharePoint Online 触发Outlook邮件内审批

SharePoint Online 触发Outlook邮件内审批

SharePoint Online 触发Outlook邮件内审批