Posted by ChristianP on June 10, 2010 at 9:18am
Har ett problem.
Jag använder Drupals inbyggda sökfält. Så hittade jag en guide på internet om hur man fixar onfocus/blur event på den genom att gå in i template.php och skriva:
<?php
function blueprint_search_block_form($form) {
$form['search_block_form']['#value'] = t('Search');
$form['search_block_form']['#attributes'] = array('onblur' => "if (this.value == '') {this.value = 'Sök';}", 'onfocus' => "if (this.value == 'Sök') {this.value = '';}" );
$output .= drupal_render($form);
return $output;
}
?>Då funkar det att klicka på texten i rutan "Sök" så den blir tom tills man klickar ur. Men det skumma är att den fungerar bara på 4 av 6 av mina sidor... :S Fattar ingenting, hur kan den göra så? Jag har jämfört med firebug på sidorna där det funkar och sidorna där det inte funkar, men attributen är den samma, dvs:
<input type="text" class="form-text" onfocus="" onblur="" value="Sök" size="15" id="edit-search-block-form-1" name="search_block_form" maxlength="128">Jag har inga speciella page.tpl.php eller nåt som kan störa, har faktiskt ingen aning varför den beter sig såhär.
Comments
Placeholders…
Placeholders med hjälp av onfocus och onblur är svåra att få fungera bra över alla webbläsare. Och jag skulle föreslå att du med hjälp av drupal_add_js läser in javascript som inte ligger direkt i HTML-koden. Då kan du använda javascript som denna bit kod av Roger Johansson eller denna om du redan har jQuery laddad på sidan.
Till slut är det bara att vänta på att HTML5 blir spikat så du slipper krångliga lösningar som dessa. :)
--
fyrkantigt.se av Niklas Brunberg
JavaScript fil via
JavaScript fil via drupal_add_js tror jag också är en bättre lösning.
Skrev lite om detta på min blog Spice up your Drupal 6 site search field with a bit of jQuery and CSS | xdeb.org
Tackar, ska kolla upp det! :)
Tackar, ska kolla upp det! :)