Autor |
Beitrag |
Heiko
      
Beiträge: 3169
Erhaltene Danke: 11
|
Verfasst: So 07.03.10 12:16
Wenn man bei Opera im Beitragseditor auf z.B. "b" drückt, kommt in der Fehlerkonsole immer:
Quelltext 1: 2: 3: 4: 5: 6: 7: 8:
| Uncaught exception: TypeError: Cannot convert 'document.post.message.caretPos' to object
Error thrown at line 430, column 2 in isSelection() in http://www.delphi-forum.de/scripts/posting.js: return document.post.message.caretPos.text.length > 0; called from line 484, column 1 in bbstyle(bbid) in http://www.delphi-forum.de/scripts/posting.js: isSel = isSelection(); called from line 1, column 0 in <anonymous function>(event): bbstyle('b') |
Die anderen Buttons ergeben den gleichen Fehler (nur nen leicht anderen Stacktrace  ).
|
|
Christian S.
      
Beiträge: 20451
Erhaltene Danke: 2264
Win 10
C# (VS 2019)
|
Verfasst: So 07.03.10 12:21
_________________ Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
|
|
Heiko 
      
Beiträge: 3169
Erhaltene Danke: 11
|
Verfasst: So 07.03.10 12:31
Nein - besserer Code würde da schon reichen
Aktuell:
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| function isSelection() { document.post.message.focus(); if (is_ie4up) return document.selection.createRange().text != ''; else if (is_gecko) return document.post.message.selectionStart != document.post.message.selectionEnd; else if (is_opera) return document.post.message.caretPos.text.length > 0; else return false } |
Wie du siehst, scheitert hier genau die Opera-Code-Zeile. Ich kann dir zwar nicht sagen, warum caretPos nicht mehr existiert, aber chöner Code fragt nicht den Browser ab, sondern schaut, welche Features es gibt. Bei diesem Verfahren hätte Opera automatisch die FF-Version genommen, die scheinbar funktioniert (selectionStart kennt er zu mindestens, das End habe ich aber nicht getestet).
Neuer (ungetester) Code:
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| function isSelection() { document.post.message.focus(); if (document.post.message.selectionStart) return document.post.message.selectionStart != document.post.message.selectionEnd; else if (ocument.post.message.caretPos) return document.post.message.caretPos.text.length > 0; else if (document.selection.createRange) return document.selection.createRange().text != ''; return false; } |
|
|
Regan
      
Beiträge: 2157
Erhaltene Danke: 72
Java (Eclipse), Python (Sublimetext 3)
|
Verfasst: So 07.03.10 12:40
|
|
Martok
      
Beiträge: 3661
Erhaltene Danke: 604
Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
|
Verfasst: So 07.03.10 18:28
_________________ "The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
|
|
Gausi
      
Beiträge: 8548
Erhaltene Danke: 477
Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
|
Verfasst: So 07.03.10 20:59
Also ich fänd das auch toll, wenn sich das bei Gelegenheit einbauen ließe. Ich gehör nämlich auch zu diesen 3%. 
_________________ We are, we were and will not be.
|
|
JoelH
      
Beiträge: 806
Erhaltene Danke: 17
Win10
Delphi Alexandria 11.2 Patch 1
|
Verfasst: Mo 08.03.10 09:54
_________________ mfg. Joel
|
|
jfheins
      
Beiträge: 918
Erhaltene Danke: 158
Win 10
VS 2013, VS2015
|
Verfasst: Mo 08.03.10 10:01
Auch für den Fix
Hab nämlich keine Lust, die die EE auch n Userscript zu schreiben ...
|
|
Heiko 
      
Beiträge: 3169
Erhaltene Danke: 11
|
Verfasst: Mo 08.03.10 11:47
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Mo 08.03.10 23:28
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
jfheins
      
Beiträge: 918
Erhaltene Danke: 158
Win 10
VS 2013, VS2015
|
Verfasst: Di 09.03.10 10:40
|
|