Seite 5 von 6

Re: [RC] Color Picker v.1.0.0

Verfasst: 20.03.2015 08:22
von Rare Essence
@regazer
Stimmt, das geht noch kürzer. Die Angabe der Klasse color ist dabei aber unbedingt erforderlich, sonst funktionierte das bei mir nicht.

Mouseover geht auch:

<input id="culur" class="color" value='000000' title="{L_BBCODE_S_HELP}" onmouseover="document.getElementById('colorpicker').color.showPicker()" />

Das finde ich aber etwas störend, weil das dann immer aufpoppt, wenn man die BBCode-Leiste überfährt, die ist bei mir zweizeilig. Außerdem schließt das Ding so nicht automatisch, wenn man mit der Maus aus dem Picker ist. Hier kann man dann hinter der Klasse color {pickerClosable:true} ergänzen, um einen Closebutton anzeigen zu lassen.

Re: [RC] Color Picker v.1.0.0

Verfasst: 20.03.2015 19:34
von regazer
Danke für die Antwort. Sicher ist die Klasse "color" nötig, denn die ist es ja, wodurch der Color Picker überhaupt erst aufgerufen wird.

Damit das funktioniert, was Du gepostet hast, muß allerdings die Bezeichnung identisch sein, also wenn id="culur", dann auch entsprechend document.getElementById('culur').color und dort NICHT 'colorpicker'

Wahrscheinlich hatte ich das bei meinen Tests vorige Nacht auch nicht bedacht, so daß es deshalb nicht funktionierte. Interessanterweise fiel mir das erst jetzt durch Deinen Beitrag auf, als ich mich wunderte, daß es so wie DFu es beschriebst, bei mir auch nicht funktionierte.

Der Color Picker kann auch wieder automatisch geschlossen werden
onmouseout="document.getElementById('culur').color.hidePicker()"

Wenn man viele BBCodes hat, lassen die sich auch zusammen fassen.
Guck mal ungefähr hier https://phpbb.de/community/viewtopic.ph ... s#p1328212. Da gab mir HabNurNeFrage diesbzgl. einen hilfreichen Hinweis.

Re: [RC] Color Picker v.1.0.0

Verfasst: 20.03.2015 20:02
von Rare Essence
Nee, das kommt dabei heraus, wenn man die ID für sich umbenennt und dann beim Posten im Forum nur halb der anderen Bezeichnung anpasst. :oops:

Der Ansatz mit myPicker funktionierte bei mir auch ohne die Klasse color, deshalb fiel mir das überhaupt auf.

Re: [RC] Color Picker v.1.0.0

Verfasst: 20.03.2015 20:09
von regazer
Oh, jetzt hast Du geantwortet, während ich meinen Beitrag aktualisiert habe. Darum weiß ich jetzt nicht genau, was Du mit Nee ... meinst. :roll:

Re: [RC] Color Picker v.1.0.0

Verfasst: 20.03.2015 20:42
von Rare Essence
Ich meinte colorpicker bzw. culur, das hatte ich beim Testen schon gleich benannt. Aber mit onmouseover schließt der Picker sich nicht von allein und mit onmouseout und hidePicker kommt man gar nicht in den Picker rein.

Re: [RC] Color Picker v.1.0.0

Verfasst: 20.03.2015 20:56
von regazer
Das mit onmouseout ist tatsächlich etwas schwieriger zu handhaben als ich zunächst dachte. :o

Wenn man ERST ins Editorfeld (oder irgendeine andere Freifläche) klickt und DANN den Mauscursor auf das Color-Inputfeld bewegt, verschwindet der Color Picker nicht gleich wieder. Mit anderen Worten: OnMouseOut wirkt NUR DANN SOFORT, wenn das Color-Inputfeld bereits aktiv ist (z.B. wenn bereits eine Farbe ausgewählt wurde) oder man gezielt reinklickt. Andererseits wirkt es auch überhaupt nur, wenn der Mauscursor sich über das Inputfeld bewegt und leider nicht, wenn man mit dem Mauscursor den Pickerbereich verläßt.

Wenn man es weiß, ist es relativ problemlos. Aber für ein "normales" Forum, bei dem die Benutzer dann rätseln müssen und nicht klar kommen, sollte man es tatsächlich anders handhaben. Vielleicht finden wir noch alle zusammen eine Idealfassung.

Was mir eigentlich vorschwebte, ist das Öffnen des Pickers durch MouseOver über das Inputfeld und das Schließen durch Verlassen des Pickers, also müßte OnMouseOut für den Picker gesetzt werden. Das geht dann aber wahrscheinlich (ohne Änderungen in jscolor.js vorzunehmen) doch nur mit einer neu initialisierten Kopie, wie bei der ursprünglichen Mod-Idee und Deiner Vereinfachung.

Allerdings hätte ich noch diese Notlösung anzubieten:

Code: Alles auswählen

	<input id="culur" class="color {pickerFaceColor:'transparent',pickerFace:3,pickerBorder:0,pickerPosition:'top'}" value='000000' title="{L_BBCODE_S_HELP}" onmouseover="document.getElementById('culur').color.showPicker()" />
    <input type="button" onclick="bbfontstyle('[color=#' + document.getElementById('culur').color + ']' , '[/color]')" class="button2" value="OK" onmouseout="document.getElementById('culur').color.hidePicker()"/>
OnMouseOver über dem Inputfeld öffnet den Picker und OnMouseOut über dem OK-Button schließt ihn. Obwohl: Ein einfacher Mausklick irgendwohin ausserhalb des Inputs und des Pickers tut es erstaunlicherweise manchmal (keine Ahnung wann und wann nicht) auch schon. :lol:

Re: [RC] Color Picker v.1.0.0

Verfasst: 24.03.2015 18:05
von Nevets
:(

Re: [RC] Color Picker v.1.0.0

Verfasst: 24.03.2015 23:15
von regazer
Wieso traurig ?

Diese Modifikation ist supereinfach einzubauen und es gibt mehrere Möglichkeiten, sie eigenen Wünschen anzupassen. Hast Du denn alle Beiträge gelesen ? Oder ist das doch nicht das, was Du bei Deiner Anfrage viewtopic.php?f=87&t=233815&p=1335491#p1335491 gesucht hattest ? :roll:

Re: [RC] Color Picker v.1.0.0

Verfasst: 25.03.2015 00:20
von Rare Essence
@regazer
Ich hatte das nochmals mit verschiedenen Kombinationen von mouseover, mouseup -out, -down usw. versucht, aber das funktionierte nie so, daß der Picker sich selbst schloß, wenn die Maus nicht mehr im selbigen war...oder aber man kam gar nicht erst in den Picker rein, weil der sich gleich schloß.

Für mein Forum ist das wie erwähnt eh nicht so zielführend.

Re: [RC] Color Picker v.1.0.0

Verfasst: 25.03.2015 09:23
von regazer
Mir ist es auf diese Weise auch zu umständlich. Darum werde ich es "ganz normal" (in der von mir beschriebenen, verkürzten Form) einsetzen. Alles andere waren Testansätze, die (wie Du es richtig genannt hast) nicht wirklich "zielführend" sind.