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, 10531 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
JavaScript
gelöst Datumabhängiger Text in HTML anzeigen (4)

Frage von adm2015 zum Thema JavaScript ...

VB for Applications
gelöst csv Dateien als Text importieren (7)

Frage von Bacchida zum Thema VB for Applications ...

Administrator.de Feedback
gelöst Text nach Smiley Symbol auf iPad weg (5)

Frage von Deepsys zum Thema Administrator.de Feedback ...

Webbrowser
gelöst Google Chrome - Texte übereinander (7)

Frage von AveiroCR7 zum Thema Webbrowser ...

Neue Wissensbeiträge
Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Windows 10

Windows 10: Erste Anmeldung Animation deaktivieren

(3)

Anleitung von alemanne21 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Linksys wrt1200ac v2 mit dd-wrt: keine vlan-einstellungen im GUI (15)

Frage von Pixi123 zum Thema Router & Routing ...

E-Business
Wo tragt ihr eure privaten Termine ein? (13)

Frage von honeybee zum Thema E-Business ...

Batch & Shell
Batch zum suchen und verschieben von Verknüpfungen (12)

Frage von zeroblue2005 zum Thema Batch & Shell ...

Windows Server
Terminalserver starten willkürlich neu (12)

Frage von thaefliger zum Thema Windows Server ...