Autor | Zpráva | ||
---|---|---|---|
Mufna Profil |
#1 · Zasláno: 9. 6. 2016, 16:25:33
Zdravím Vás. Potřebuji změnit událost onblur v existujícím inputu (vzdáleně, nemůžu editovat přímo ten input)
<form id="searchbox"> // .... nějaký kód <input id="csquicksearch" class="search_query" type="text" onblur="if (this.value =='') this.value='Vyhledat...'" onfocus="this.value=''" value="Vyhledat... " name="search_query"> // ... nějaký kód </form> Zatím jsem to zkusil takto, ale nefunguje mi to: $('#searchbox').find('#csquicksearch').blur(function() { if ($this.value =='') $this.value='Co hledáte? Např. čokoláda'; }); Možná dělám jenom syntaktickou chybu, nevím. Poradíte mi prosím někdo ? Předem díky |
||
_es Profil |
Mufna:
Na čo do toho montuješ jQuery? Čomu čakáš, že sa bude rovnať (asi neexistujúca) premenná $this ? Veľmi jednoducho:
document.getElementById('csquicksearch').onblur = function() { if (this.value =='') this.value='Co hledáte? Např. čokoláda'; }; placeholder ? Návštevníci asi nebudú mať radosť z toho, že musia najprv z políčka zmazať text „Co hledáte? Např. čokoláda “, predtým, než by tam mohli niečo napísať.
|
||
Mufna Profil |
_es:
díky za reakci ... já to prostě potřebuju pomocí jQuery, nějak v tom duchu jak jsem to naznačil, včetně toho find() atd., lze ten můj pokus upravit, aby to fungovalo ? má to jen nahradit to "onblur" v prvním kódu, pomocí JS, nic víc Nemá to byť skôr atribút placeholder ? ne, nic takového nepotřebuju |
||
KryVosa Profil |
#4 · Zasláno: 9. 6. 2016, 17:36:20
Tak, když je to tedy Vaším přáním...
$('#searchbox').find('#csquicksearch').blur(function() { if (this.value =='') this.value='Co hledáte? Např. čokoláda'; }); |
||
_es Profil |
#5 · Zasláno: 9. 6. 2016, 18:03:00
Mufna:
„já to prostě potřebuju pomocí jQuery“ A v čom je problém? Kód z [#2] predsa nezávisí od toho, čo tam jQuery máš alebo nemáš. Ak potrebuješ aj odstrániť pôvodnú akciu na onblur , tak to spravíš len „normálne“ zmenením vlastnosti onblur , v čom ti jQuery veľmi nepomôže.
KryVosa [#4]: To nebude fungovať, lebo chce „zmeniť“ onblur a hento len pridá ďalšiu akciu po udalosti. A obe akcie budú v takom poradí, že to ani nebude mať efekt: Živá ukázka, no: Živá ukázka bude fungovať.
|
||
Časová prodleva: 8 let
|
0