SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

Sharepoint 2010 Foundation PDF in neuem Fenster öffnen

bewertet von 0 Usern
Nicht beantwortet Dieser Beitrag hat 0 Geprüfte Antworten | 3 Antworten | 3 Followers

Ohne Rang
24 Beiträge
Erik W erstellt in 4 Mai 2011 9:03

Hallo, hier mein Beitrag aus einem anderern Thread, für alle, die es interessiert:

 

in der Hoffnung, dass das eine gesuchte Lösung ist und auch überall so top funktioniert, wie bei mir, hier folgendes:

Für Sharepoint 2010 (Foundation)

Ich habe Stunden/tage/Wochen damit zugebracht, PDFs in Dokumentenbibliotheken in neuen Fenstern öfnen zu lassen. Ich bin dabei auf unterschiedlichste Lösungen gestoßen, angefangen von berechneten Spalten (hierbei muss aber der Dateiname mit der Beschreibung übereinstimmen), über js-Dateien bis hin zum editieren der gesamten SP-Verzeichnisse.

 

Folgende überaus einfache lösung habe ich aus folgenden Lösungen zusammengebaut:

http://ctp.social.technet.microsoft.com/Forums/en-US/sharepoint2010customization/thread/2ac5221a-868f-470a-8939-3c15e7978b1d

http://blog.ithinksharepoint.com/2011/02/21/open-pdf-files-from-a-document-library-in-a-new-window/

Vorabeiten:

Datei OpenPDF.js erstellen

$("a[href$='.pdf']").removeAttr('onclick').attr("target","_blank");

-->mehr steht da nicht drin

Vorgehen:

1.folgende Dateien an einen freigegebenen Pfad im Netzwerk ablegen

  • http://ajax.microsoft.com/ajax/jQuery/jquery-1.4.4.min.js
  • OpenPDF.js

2. auf der Seite mit der Bibliothek (Homepage oder pure Bibliotheksseite) einen Inhaltseditor-Webpart einfügen


und als HTML-Quelle lediglich einen Verweis auf die beiden Dateien einbauen

<script src="\\SERVER\FREIGABE\Script\jquery-1.4.4.min.js" type="text/javascript"></script>

<script src="\\SERVER\FREIGABE\\Script\OpenPDF.js" type="text/javascript"></script>

Wer nicht weiß, wie er auf Sitepages den HTML-Inhalt eines Webparts bearbeitet:

Seite bearbeiten-->Webpart einfügen und berbeiten-->Ins Webpart klicken-->Oben am Browserrand "Bearbeitungstools"-->Text formatieren-->HTML

Nicht folgenden (o.ä.) code überschreiben

p class="ms-rteFontSize-3"><strong>Dokumente</strong></p>
<p style="font-size: 10pt">Alle wichtigen Dokumente aus dem Bereich sind hier zu finden.</p>
....

 

Viel Erfolg

Alle Antworten

Top-500-Beitragsschreiber
49 Beiträge

Hallo Erik

Habe mir gerade deinen Beitrag angeschaut und dies in SP 2013 versucht.. jedoch ohne Erfolg. Kann es sein dass es in SharePoint 2013 nicht funktioniert? Hast du da eine andere (möglichst einfache) Lösung?

Danke und Gruss

Mel

Top-10-Beitragsschreiber
18.985 Beiträge

Grundsätzlich funktioniert das auch in 2013. Das Script macht nichts anderes, als dafür zu sorgen, daß sämtliche Links auf PDF-dateien in einem neuen Reiter geöffnet werden. Allerdings wird die Listenansicht (also die Dateien der Bibliothek) in 2013 per javaScript nachgeladen und steht deshalb erst mit etwas Verspätung zur Verfügung. Dem kann man mit einer kleinen Pause begegnen.

Die JS-Dateien würde ich aber nicht über \\server\freigabe einbinden, sondern entweder über eine Bibliothek der Website oder den Layouts-Ordner des Servers. Das gilt aber auch schon für 2010. Und falls gewünscht, kann man die Dateien auch über die Masterpage einbinden, so daß es auf allen Seiten funktioniert.

Ändere den Inhalt der Datei openpdf.js wie folgt:

$(document).ready(function() {
setTimeout(function() {
$("a[href$='.pdf']").removeAttr('onclick').attr("target","_blank");
}, 1000);
});

Die 1000 in der zweitletzten Zeile sind die Verzögerung in Millisekunden (hier also eine Sekunde). Du mußt selbst ein bißchen experimentieren, welcher Wert am Besten für Deine Umgebung paßt.

Viele Grüße
Andi
af @ evocom de
Blog
Top-500-Beitragsschreiber
49 Beiträge

Super, jetzt hat es geklappt!

Tausend Dank - das hilft mir enorm weiter...

Seite 1 von 1 (4 Elemente) | RSS