2012-02-21 21 views
5

Durum:Javascript ile sözde öğe dönüşüm stili değeri nasıl alınır?

div.xy:hover { 
    transform: all rotate(360deg); 
    -moz-transform: rotate(360deg); 
    -webkit-transform: rotate(360deg); 
    -o-transform: rotate(360deg); 
} 

Soru: görüntüleyebilir ve değiştirebilirsiniz bununla
Ben almak gerekir. Beni 360'a götüren yol hakkında yardıma ihtiyacınız var.
Herhangi bir fikir var mı?

+0

Kabul, lütfen? –

cevap

6

WebKit tarayıcılarında document.getElementById('XYZ').style.WebkitTransform'un "rotate(360deg)" döndüreceğine inanıyorum. Opera için IE9 +, style.OTransform için Firefox 3.1+, style.msTransform için style.MozTransform kullanın.

Kaynak: http://www.zachstronaut.com/posts/2009/02/17/animate-css-transforms-firefox-webkit.html

fare olaylarla elemanı bağlamak için:

var e = document.getElementById('test') // Your div ID 

e.onmouseover = function(){ 
    var degree = 360; // Rotation on :hover 
    e.style.WebkitTransform = 'rotate(' + degree + 'deg)'; 
    e.style.MozTransform = 'rotate(' + degree + 'deg)'; 
    e.style.OTransform = 'rotate(' + degree + 'deg)'; 
    e.style.msTransform = 'rotate(' + degree + 'deg)'; 
    e.style.transform = 'rotate(' + degree + 'deg)'; 
} 
e.onmouseout = function(){ 
    var degree = 0; // Initial rotation 
    e.style.WebkitTransform = 'rotate(' + degree + 'deg)'; 
    e.style.MozTransform = 'rotate(' + degree + 'deg)'; 
    e.style.OTransform = 'rotate(' + degree + 'deg)'; 
    e.style.msTransform = 'rotate(' + degree + 'deg)'; 
    e.style.transform = 'rotate(' + degree + 'deg)'; 
} 

O jQuery ile basit olabilir, ancak JavaScript kökleri bilmek lazım!

+0

Bu çalışır, teşekkürler, ama sadece div ile, div: hover ile değil. Div: hover stilini değiştirme olasılığı var mı? – Heiko

+0

"JavaScript" ile "hover" stilini değiştirmenin bir yolunu bilmiyorum, ancak öğe üzerinde ".sonmouseover" ve ".onmouseout" olaylarını bağlayabilirsiniz. Güncellenmiş cevabımı görün. Güzel yanıt için –

+0

+1 - Javascript ile tüm tarayıcılar için 'dönüştürme-kökeni 'nasıl ayarlayacağınızı bilmiyor musunuz, lütfen ...? –

0

mısın ihtiyaç jQuery konum ama aradığınız şey olabilir ....

$(document).ready(function(){ 

$(".xy:hover").css("transform") 


}); 

Bu dize olarak değeri döndürür. Muhtemelen 360deg ya da herşeyi iade edip etmediğini kontrol etmelisiniz. Hem jQuery hem de CSS için div'u bırakın. JQuery için daha hızlı ve CSS olarak değil, özgüllük eklemez.

+0

Teşekkürler, ama jQuery hakkında hiçbir şey bilmiyorum. Sadece temel Javascript ile başladım ve şimdi AJAX'a ilerleyin. Basit Javascript ile çözüm yok mu? – Heiko

+1

Bence remimbreton'un cevabı senin aradığın şey. – Maroshii

İlgili konular