HTML Bilder kopieren per Drag-and-drop verhindern
Ich bin gerade dabei ein Website zu erstellen. Um ein paar spezielle Funktionen zu realisieren muss das Javascript erkennen können, wenn ein Nutzer die linke Maustaste auf einem Bild drückt, dann die Maus verschiebt und dann die Maustaste los lässt. Das Problem an der Sache ist, dass der Browser versucht das Bild zu verschieben und somit die gewünschten Aktionen nicht erkennt. Gibt es eine Möglichkeit dieses "Verschieben" zu verhindern?
4 Antworten
Du könntest über das Bild nen transparenten div-Container legen, dann erkennt er das Bild nicht mehr als Bild. Speichern könntest du es dann auch nur noch, wenn du im Quellcode nachguckst oder den genauen Pfad sowieso kennst...
Ach ja, Screenshot ist natürlich auch noch ne Möglichkeit
Na das doch mal ne gute Idee. Vielen vielen Dank. PS:es geht mir nicht darum, ob jemand das Bild kopiert oder nicht, also ist der Vorschlag super
Hallo Annett,
ein Kopierschutz durch Blockieren der rechten Maustaste mittels Javascript ist sinnlos. Denn
- lässt sich Javascript in jedem Browser problemlos (und selbst im Internetsurfgerät Internet Explorer etwas umständlich) deaktivieren
- stellt heutzutage jeder Browser eine einfach zu handhabende Möglichkeit zur Verfügung, alle auf der Seite vorhandenen Grafiken zu kopieren (mein SeaMonkey z.B. (gehört zur Mozilla-Familie) in Ansicht --> Seiteninformationen --> Medien lassen sich alle Bilder und sonstige Medien der Seite problemlos kopieren)
Um wenigstens für Otto-Normalverbraucher und Lisa-Normalverbraucherinnen das Kopieren der Grafiken zu verhindern, ist eine recht einfache Lösung das schon hier angesprochene Überblenden mit einem durchsichtigen Container (oder wie ich es mache, mit einer durchsichtigen Grafik).
Jedoch bekommst Du damit das als Punkt 2 von mir angesprochene Kopieren nicht verhindert. Denn die Grafiken sind ja immer noch Bestandteil des Webseiteninhalts. Um auch dieses Problem zu lösen, habe ich mir eine Lösung in PHP einfallen lassen, die ein Kopieren nur noch als Screenshoot (lässt sich leider nie verhindern) oder sehr mühsames aus dem Browsercache (können nur Experten/Expertinnen) ermöglicht. Das Ganze funktioniert aber nur bei unbewegten, nicht animierten Bildern. Wenn Du möchtest, stelle ich Dir das Script dafür gerne zur Verfügung, selbstverständlich kostenlos (schließlich ist GuteFrage.net keine Plattform für kommerzielle Werbung).
Gruß Kira-Bianca
P.S. Du kannst die Wirkungsweise meines Kopierschutz-Scripts auf meiner eigenen HP http://Kira-Bianca.de sehen. Auf der Seite Mein Leben heute habe ich ein Foto von mir entsprechend geschützt. Das Bild ist zurzeit aber in sich verschoben, es sollte eigentlich wirklich wie ein zusammenhängendes Foto aussehen Ich habe beim Zerteilen Fehler gemacht und finde einfach keine Zeit, dieses zu korrigieren.
JS lässt sich prima deaktiveren - browser wie etwa Chrome haben es sogar per default deaktiviert - was du willst ergibt keinen sinn
Wenn du das meinst dann erläutere mir deine Antwort doch bitte. Denn so kann man damit wenig anfangen.
Inhalt mit Flash anzeigen.
Aber selbst dann kann man immernoch nen Screenshot machen.
Andere Möglichkeit;
http://www.html5canvastutorials.com/tutorials/html5-canvas-images/
Mit HTML5 geht sowas sogar recht gut, nicht Perfekt aber scheint mir doch die sauberste Lösung. Statt des Links könnte man einen Base64-Kodierten String nehmen oder sich einen Obfuscator schreiben.
Ist mir schon klar...
Wenn man's kopieren will, kopiert man's eh. Flash hält zumindest einen gewissen Teil von Usern fern, zumal man ein Div-Overlay ebenso einfach entfernen kann.
Ich glaube dass ich mein Problem nicht richtig erklähren konnte. Wenn man ein beliebiges Bild auf einer Website per Drag and Drop aus dem Brwoser zieht kann man es auf diese weise einfach speichern. Genau diese Funktion kann ich für mein Vorhaben nicht gebrauchen. Einfach gesagt möchte ich dass sich der Browser so verhält als gäbe es an der stelle kein Bild. Er soll einfach nichts machen bei einer Drag and Drop Aktion. Und das deaktivieren von JS bringt zum einen bei diesem Problem nichts und ich benötige es auch.