Ich habe eine Dokumentbibliothek in Sharepoint 2010 und die Bibliothek halten verschiedene Arten von Dateien mit Hilfe von JavaScript: Word, Excel, PDF, HTML ...eine Schleife durch Links auf Seite und legen Sie Zielattribut
Die meisten der Dateitypen in einer Anwendung geöffnet. Diejenigen, die nicht, wie .htm Newsletter, öffnen sich im selben Fenster. Die SharePoint-Dokumentbibliothek ist mit den Dateien verknüpft, erlaubt jedoch nicht das Festlegen der Zieleigenschaft.
Ich möchte dies programmgesteuert onload festlegen.
Ich habe einen Stich zu schreiben den Code genommen:
for(var i = 0, l=document.links.length; i<l; i++) {
var id = document.links[i].href;
var idl = id.length;
if(idl >=7){
var lastfour = id.substr(id.length - 4);
var lastfive = id.substr(id.length - 5);
if (lastfour == ".pdf"){
//alert(document.links[i].href);
document.links[i].setAttribute('target', '_blank');
document.links[i].setAttribute('onfocus', 'return flase;');
}
if (lastfour == ".htm"){
//alert(document.links[i].href);
document.links[i].setAttribute('target', '_blank');
document.links[i].setAttribute('onfocus', 'return false;');
}
if (lastfive == ".html"){
//alert(document.links[i].href);
document.links[i].setAttribute('target', '_blank');
document.links[i].setAttribute('onfocus', 'return false;');
}
}
}
Dies funktioniert, weil es den Link zu öffnen in einem neuen Fenster verursacht, sondern eröffnet auch im Hauptfenster. Nach weiteren Recherchen fand ich heraus, dass Sharepoint einige verrückte Dinge mit den Links tut:
<a onfocus="OnLink(this)" href="/Diocesan/2017 Diocesan Special Collection Calendar.pdf" onmousedown="return VerifyHref(this,event,'0','PdfFile.OpenDocuments','')" onclick="return DispEx(this,event,'TRUE','FALSE','FALSE','','0','PdfFile.OpenDocuments','','','','1210','0','0','0x400001f07fbf1bff','','')">2017 Diocesan Special Collection Calendar</a>
ich glaube, mein Problem mit dem onfocus Attribut gebührt gesetzt ist oder vielleicht der Onclick. Ich bin mir nicht sicher, was passiert. Sollte ich versuchen, onmousedown, onclick & onfocus = ""?
Versuchen Sie Folgendes: https://stackoverflow.com/questions/103402/how-can-you-have-sharepoint-link-lists-default-to-opening-in-a-new-window –