Autor Zpráva
Adam111
Profil
Mam kod v Javascriptu, ktery by mel kliknout na textarea (input) s textem. Jedna se o stranku Youtube (Studio). Textarea (input) se nacita javascriptem az po kliknutu na tlcitko. Bohuzel nefunguje. V konzoli neni zadna chyba.

Zde je kod: document.querySelector('#title-textarea #input').click();
Rastíík
Profil *
No a co ti vypíše document.querySelector('#title-textarea #input')? Opravdu má ta textarea či co identifikátor #input?
Adam111
Profil
Vypise:
<ytcp-social-suggestion-input id="input" class="fill-height style-scope ytcp-social-suggestions-textbox" dir="auto"><!--css-build:shady--><!--css_build_scope:ytcp-social-suggestion-input--><div id="textbox" slot="input" contenteditable="true" role="textbox" tabindex="0" class="style-scope ytcp-social-suggestions-textbox" aria-required="true" aria-label="Add a title that describes your video (type @ to mention a channel)" aria-invalid="false" style="display: inline-block;">ggg</div>
</ytcp-social-suggestion-input>
Keeehi
Profil
A co o úroveň hlouběji?
document.querySelector('#title-textarea #input #textbox').click();

Jinak ale metoda click se používá hlavně pro tlačítka. Pro aktivaci formulářového prvků slouží metoda focus.
Tohle je ale div. Tam nevím. Může fungovat jedno, druhé a možná že bude třeba použít něco úplně jiného.
Adam111
Profil
Rastíík, Keeehi:
A co o úroveň hlouběji?
document.querySelector('#title-textarea #input #textbox').click();
Nic se nestane.

Pro aktivaci formulářového prvků slouží metoda focus.
Focus jsem take zkousel, ale bez uspechu.
Rastik
Profil *
Adam111:
Focus jsem take zkousel, ale bez uspechu.
Zvláštní. Mně to funguje: jsfiddle.net/483e7bh5 (zkušel jsem to v Safari a Chrome).
Adam111
Profil
Rastik:
Po zavreni konzole v Chromu to uz funguje.

Dekuji moc.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0