2012-02-21 43 views

Trả lời

6

Tôi tin rằng document.getElementById('XYZ').style.WebkitTransform sẽ trả lại "rotate(360deg)" trong trình duyệt WebKit. Bạn có thể sử dụng style.MozTransform cho Firefox 3.1+, style.msTransform cho IE9 +, style.OTransform cho Opera.

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

Để ràng buộc yếu tố với các sự kiện chuột:

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)'; 
} 

Nó có thể là đơn giản với jQuery, nhưng bạn phải biết rễ JavaScript của bạn!

+0

Nó hoạt động, cảm ơn, nhưng chỉ với div, không phải với div: hover. Bất kỳ khả năng nào để thay đổi kiểu div: hover? – Heiko

+0

Tôi không biết cách sửa đổi thành phần ': hover' bằng' JavaScript', nhưng bạn có thể ràng buộc các sự kiện '.onmouseover' và' .onmouseout' trên phần tử. Xem câu trả lời cập nhật của tôi. –

+0

+1 cho câu trả lời hay - Bạn không biết cách đặt 'biến đổi gốc 'cho tất cả trình duyệt bằng Javascript, vui lòng ...? –

0

Bạn đang gonna cần jQuery nhưng nó có thể là những gì bạn đang tìm kiếm ....

$(document).ready(function(){ 

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


}); 

này trả về giá trị như là một chuỗi. Bạn có thể nên kiểm tra xem nó trả về 360deg hoặc toàn bộ điều. Thả div cho cả jQuery và CSS. Đối với jQuery là nhanh hơn không gọi nó và trong CSS nó không thêm tính đặc hiệu.

+0

Cảm ơn, nhưng tôi không biết gì về jQuery. Chỉ cần bắt đầu với Javascript cơ bản và chuyển sang AJAX ngay bây giờ. Có giải pháp nào với Javascript đơn giản không? – Heiko

+1

Tôi nghĩ câu trả lời của remimbreton là những gì bạn đang tìm kiếm – Maroshii

Các vấn đề liên quan