SORU
8 HAZİRAN 2009, PAZARTESİ


Eğer bir giriş varsa test etmek için kullanarak bir WordPress kullanmak odağı

Birkaç bina olduğum bir sitenin ön sayfasında <div>s CSS :fareyi üzerine bir kenarlık eklemek için hover özelliği kullanın. <div>s biri, DV kullanarak, eğer içinde bir giriş varsa sınırı tutacak <form> bir odak içerir. Bu IE6 desteklemiyor dışında mükemmel çalışıyor :herhangi bir öğe <a>s dışında gezdirin. JQuery css taklit etmek için kullanıyoruz sadece bu tarayıcı için :hover kullanarak $(#element).() vurgu yöntemi. Tek sorun, artık bir WordPress kullanmak hem form odağı kolları()vegiriş kullanıcı fare ve içeri dışarı hareket ediyor sonra da odağa sahip olduğunda, sınırı geçer. () getirin,

Koşullu bir tür bu davranışı durdurmak için kullanabiliriz. Eğer varsa giriş odağa sahip fare üzerinde test ettik örneğin, uzağa gitmekten sınır durdurabiliriz. Bildiğim kadarıyla yok :jQuery seçici odak, bunu gerçekleştirmek için nasıl emin değilim. Herhangi bir fikir?

Yardımlarınız için teşekkürler.

CEVAP
21 NİSAN 2010, ÇARŞAMBA


bir WordPress kullanmak 1.6

jQuery biz artık kendimiz eklemek lazım :focus seçici eklendi. Sadece kullanım $("..").is(":focus")

jQuery ve aşağıda 1.5

Düzenleme:Zaman değişti gibi, odaklanma, this gist from Ben Alman yeni gözdesi test etmek için daha iyi yöntemler buluyoruz:

jQuery.expr[':'].focus = function( elem ) {
  return elem === document.activeElement && ( elem.type || elem.href );
};

Alıntı Mathias Bynens here:

(elem.type || elem.href) test vücut gibi yanlış pozitif filtre eklendiğini unutmayın. Bu şekilde, tabii form denetimleri ve köprüler dışında tüm öğeleri filtrelemek için yapıyoruz.

Yeni bir seçici tanımlama. Plugins/Authoring bkz. Sonra da yapabilirsiniz:

if ($("...").is(":focus")) {
  ...
}

ya da:

$("input:focus").doStuff();

Herhangi bir WordPress kullanmak

Eğer sadece odağın hangi anlamaya istiyorsanız, kullanabilirsiniz

$(document.activeElement)

Eğer varsa, sürüm 1.6 veya daha düşük olacak Eğer emin değilse, eğer eksik ise :focus seçici ekleyebilirsiniz:

(function ( $ ) {
    var filters = $.expr[":"];
    if ( !filters.focus ) { 
        filters.focus = function( elem ) {
           return elem === document.activeElement && ( elem.type || elem.href );
        };
    }
})( jQuery );

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • AmeriiK_HD

    AmeriiK_HD

    16 AĞUSTOS 2012
  • Showtime

    Showtime

    21 HAZİRAN 2006
  • SuicideSheeep

    SuicideSheee

    8 Ocak 2012