tag:forum.selfhtml.org,2005:/selfCKEDITOR Caret Position setzen – SELFHTML-Forum2018-09-14T18:40:31Zhttps://forum.selfhtml.org/self/2018/sep/14/ckeditor-caret-position-setzen/1731973#m1731973mixmastertobsitobias.otto@slewo.com2018-09-14T13:49:25Z2018-09-14T13:49:25ZCKEDITOR Caret Position setzen<p>Hallo,</p>
<p>kann mir jemand einen Tipp geben, wie ich bei CK Editor nach dem Laden des Editors und des Text die Caret Position automatisch verändern kann.</p>
<p>Ich möchte, dass der Mauszeige nach einem bestimmten Container ist.</p>
https://forum.selfhtml.org/self/2018/sep/14/ckeditor-caret-position-setzen/1731984#m1731984Regina Schaukrug2018-09-14T16:08:54Z2018-09-14T16:08:54ZCKEDITOR Caret Position setzen<p>Mit CK Editor meinst Du wohl die lib zum Erzeugen einer Eingabe für formatierten Text im Browser.</p>
<p>Das wird wohl nicht gehen. Mir fällt nichts ein wie man mittels JS den Mauszeiger bewegen kann. Das wäre auch ein ernstes Sicherheitsproblem.</p>
https://forum.selfhtml.org/self/2018/sep/14/ckeditor-caret-position-setzen/1731989#m1731989Rolf B2018-09-14T18:40:31Z2018-09-14T18:48:56ZCKEDITOR Caret Position setzen<p>Hallo mixmastertobsi,</p>
<p>ich habe gerade mal die CK Editor Seite aufgerufen. Zumindest die Version 5 verwendet einen contenteditable Bereich und füllt ihn mit HTML, der dem zu editierenden Dokument entspricht.</p>
<p>Du müsstest in diesem Bereich das HTML Element lokalisieren, in das Du den Cursor setzen willst. Der Edit-Bereich könnte über die Klasse ck-editor__editable zu finden sein, das ist aber an Hand der Anzeige im Elemente-Explorer von Chrome geraten. ck-editor__editable_inline wäre auch denkbar.</p>
<p>Wie Du Dich dann innerhalb dieses Bereichs orientierst, hängt wohl von deinem Dokument ab.</p>
<p>Und dann:</p>
<pre><code class="block language-js"><span class="token keyword">var</span> node <span class="token operator">=</span> <span class="token function">doMagicAndFindTheNode</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">// Dein Job</span>
<span class="token keyword">var</span> selection <span class="token operator">=</span> window<span class="token punctuation">.</span><span class="token function">getSelection</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
selection<span class="token punctuation">.</span><span class="token function">collapse</span><span class="token punctuation">(</span>node<span class="token punctuation">,</span> <span class="token number">0</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre>
<p>und dann sollte der Cursor am Textanfang dieses Node stehen. Also - die Schreibmarke. Nicht der Mauszeiger.</p>
<p>MDN Lektüre (unser Wiki ist hier schwach besetzt):</p>
<ul>
<li><a href="https://developer.mozilla.org/en-US/docs/Web/API/DocumentOrShadowRoot/getSelection" rel="nofollow noopener noreferrer">window.getSelection</a></li>
<li><a href="https://developer.mozilla.org/en-US/docs/Web/API/Selection/collapse" rel="nofollow noopener noreferrer">selection.collapse</a></li>
</ul>
<p>Hdh<br>
<em>Rolf</em></p>
<div class="signature">-- <br>
sumpsi - posui - clusi
</div>
https://forum.selfhtml.org/self/2018/sep/14/ckeditor-caret-position-setzen/1731985#m1731985TSts-self@online.dehttps://bitworks.de2018-09-14T16:57:06Z2018-09-14T16:57:06ZCKEDITOR Caret Position setzen<p>Hello,</p>
<p>den Mauszeiger nicht, aber die Schreibmarke kann man bewegen.<br>
War das vielleicht gemeint?</p>
<p>Liebe Grüße<br>
Tom S.</p>
<div class="signature">-- <br>
Es gibt nichts Gutes, außer man tut es!<br>
Das Leben selbst ist der Sinn.<br>
</div>