jQuery .focus() und .blur() funktioniert nicht in Chrome oder Safari

Erstelle ich ein Umfrage-Formular, das muss jede Frage und Antworten hervorgehoben (Wechsel der Hintergrundfarbe), wenn der Benutzer den Fokus auf Sie. .focus() und .blur() funktioniert in Firefox und IE, aber nicht ganz in Safari und Chrome. Ich habe auch versucht .focusin() und .focusout() mit dem gleichen Ergebnis. EDIT: Klick nicht ausgelöst, der focus-Ereignis, aber die Tab durch die Eingabefelder funktioniert. Ich sage nicht ganzweil es funktioniert für text-Eingänge, Eingänge auswählen und textarea-Eingänge, aber keine radio-und checkbox-inputs.

$(document).ready(function()
 {
    $("form li").focusin(function()
  {
   $(this).addClass("over");
  }).focusout(function()
  {
     $(this).removeClass("over");
  });
 });

Diese wird angewandt, um Blöcke von html-ähnlich wie diese:

<li>
    <label for="webmail" class="desc">Email</label>
    <input type="text" name="webmail" id="webmail" />
</li>
<li>
    <label for="business" class="desc">Purpose of your Charter Flight:</label>
    <div>
        <span>
            <input type="radio" name="purpose" id="business" class="radio" />
            <label class="choice" for="business">Business</label>
        </span>
        <span>
            <input type="radio" name="purpose" id="pleasure" class="radio" />
            <label class="choice" for="pleasure">Pleasure</label>
        </span>
    </div>
</li>

Habe ich versucht andauernd an und aus schaltet, aber ich bin auf der Suche nach einer eleganten Lösung, die nicht die Verwendung von gewundenen Logik zu machen, damit es funktioniert. Irgendwelche Ideen?

InformationsquelleAutor der Frage Eric | 2010-07-27

Schreibe einen Kommentar