Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Text nicht markierbar machen

Frage Entwicklung JavaScript

Mitglied: EinTyp

EinTyp (Level 1) - Jetzt verbinden

02.11.2010, aktualisiert 10:36 Uhr, 10479 Aufrufe, 11 Kommentare

Hallo Administratoren,

Wie kann man einen bestimmten Text nicht markierbar machen?
Es soll nur dazu dienen, Schönheitsfehler zu vermeiden.
Ich habe schon verschiedene Sachen ausprobiert, aber die funktionieren alle nicht.

z.B.
01.
  disableSelection(document.getElementById("nav"))
Ich hoffe ihr könnt mir helfen.
Danke schonmal im vorraus

mfg -einTyp-
Mitglied: H41mSh1C0R
02.11.2010 um 10:34 Uhr
z.B.

01.
window.onload = function() { 
02.
  var element = document.getElementById('content'); 
03.
  element.onselectstart = function () { return false; } // ie 
04.
  element.onmousedown = function () { return false; } // mozilla 
05.
}

PS: dein Code Tag ist nicht geschlossen. ^^
Bitte warten ..
Mitglied: EinTyp
02.11.2010 um 10:50 Uhr
Es geht leider nicht

Ich habs auf Mozilla und IE probiert. Überall das gleiche.

wäre es so richtig? (ich bin nicht der JavaScript-Profi^^)
01.
  window.onload = function() { 
02.
      var element = document.getElementById('nav'); 
03.
      element.onselectstart = function () { return false; } 
04.
      element.onmousedown = function () { return false; } 
05.
    }
trotzdem Danke
Bitte warten ..
Mitglied: Snowman25
02.11.2010 um 11:02 Uhr
hallo EinTyp,

wie wäre es, wenn du den Style der Auswahl genauso auswählst wie der normale Text? Dann wird zwar immer noch markiert, aber man kann es nicht sehen.
Du müsstest es ungefähr so machen:
01.
	#nav::selection { 
02.
		background: #c00; 
03.
		color: #fff; 
04.
05.
	#nav::-moz-selection { 
06.
		background: #c00; 
07.
		color: #fff; 
08.
09.
	#nav::-webkit-selection { 
10.
		background: #c00; 
11.
		color: #fff; 
12.
	}
wobei #c00 und #fff natürlich deine Farben repräsentieren.

Gruß
Snow
Bitte warten ..
Mitglied: H41mSh1C0R
02.11.2010 um 11:02 Uhr
Nav ist bei dir die Navigation? Mit dem getElementById kannst du sozusagen einzelne Elemente auswählen wo du die folgenden Sachen drauf anwendest.

Also wenn du das Markieren komplett unterbinden willst und nicht nur in dem Element dann:

01.
var element = document;  
02.
element.onselectstart = function () { return false; } // ie  
03.
element.onmousedown = function () { return false; } // mozilla 
Getestet im IE 8, FF 3.5.3 und Opera 10.10. --> Geht

PS:

bin auch kein JS Profi.
Bitte warten ..
Mitglied: H41mSh1C0R
02.11.2010 um 11:04 Uhr
Kann mich irren, aber vielleicht will er das markieren nicht zulassen damit man kein Copy&Paste machen kann.

Das über die Farben zu machen ist natürlich Tricky =) und würde auch seinen Zweck erfüllen, wenn es nur um das Sichtbare gehen sollte. ^^
Bitte warten ..
Mitglied: Snowman25
02.11.2010 um 11:19 Uhr
Zitat von H41mSh1C0R:
Kann mich irren, aber vielleicht will er das markieren nicht zulassen damit man kein Copy&Paste machen kann.

Wenn er copy&paste verbieten will, dann sollte der content einfach nicht ins netz. Ansonsten vielleicht noch als Bilder speichern und z.B. über eine Imagemap oder passende slices das Menü organisieren.
Bitte warten ..
Mitglied: EinTyp
02.11.2010 um 11:36 Uhr
hey!

dein Beispiel hat geklappt (ganze document).
Sobald ich nur ein Teil nicht-markierbar machen will, kommt es wieder auf das Alte hinaus.

Ich habe jetzt eine Beispiel-Seite:

01.
<html> 
02.
  <head> 
03.
    <title>test</title> 
04.
    <script type="text/javascript"> 
05.
      var element = document.getElementsByTagName("p")[0];   
06.
      element.onselectstart = function () { return false; } // ie   
07.
      element.onmousedown = function () { return false; } // moz 
08.
     </script>  
09.
  </head> 
10.
  <body> 
11.
    <p>mich kannst du nicht markieren</p> 
12.
    <p>mich schon</p> 
13.
  </body> 
14.
</html>
Wo liegt hier der Fehler??

mfg -einTyp-
Bitte warten ..
Mitglied: EinTyp
02.11.2010 um 11:39 Uhr
Nein,
um das verbieten von copy&paste geht es nicht.
Außer sie sind wirklich scharf auf:
Home, Impressum, etc.^^
Bitte warten ..
Mitglied: H41mSh1C0R
02.11.2010 um 14:26 Uhr
Also rein von meinem Verständnis her müsste das stimmen.

In element wird die Verbindung hinterlegt zum in deinem Fall 0ten TAG "p" und für diesen müsste auch das Script gelten.

Vielleicht findet sich ja noch ein JS Profi der hier nen Tipp geben kann.
Bitte warten ..
Mitglied: EinTyp
04.11.2010 um 14:48 Uhr
Ich habs jetzt mit CSS gelöst. Da JavaScript nicht auf einzelne Elemente begrenzen lässt... -.-

01.
#nav { 
02.
  -moz-user-select: none; 
03.
  -khtml-user-select: none; 
04.
  user-select: none; 
05.
}
Funktioniert leider nicht im IE.

Trotzdem nochmal Danke an alle.

mfg -einTyp-
Bitte warten ..
Mitglied: EinTyp
04.11.2010 um 16:36 Uhr
Ich habe den Fehler gefunden.
Man muss den JS-Teil nach den betroffenen IDs/Classes/etc. schreiben.

mfg -einTyp-
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Powershell - Ausgabe des Codes als Text (9)

Frage von internet2107 zum Thema Batch & Shell ...

Administrator.de Feedback
Upload von Text-Files möglich bzw. sinnvoll? (22)

Frage von em-pie zum Thema Administrator.de Feedback ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte
Windows Systemdateien
NTFS und die Defragmentierung (26)

Frage von WinLiCLI zum Thema Windows Systemdateien ...

LAN, WAN, Wireless
Zwei Subnetze mit je eigenem Router und Internetzugang verbinden (18)

Frage von hannsgmaulwurf zum Thema LAN, WAN, Wireless ...

Windows Server
WIndows Server 2016 core auf dem Intel NUC NUC5i5RYK i5 5250U (17)

Frage von IxxZett zum Thema Windows Server ...