2012-07-26 59 views
1

我使用的是颜色选择改变一些元素如何使用jQuery的CSS答:悬停

function(color) { 
    $("#post h1").css("color",color.toHexString()); 
    $("#footer").css("background",color.toHexString()); 
    $("#navigation a:hover").css("background",color.toHexString());    
} 

#post h1#foooter做工精细,但我怎样才能改变#navigation a:hover

+1

你会发现hover伪类没有被所有浏览器完全支持:http://reference.sitepoint.com/css/pseudoclass-hover – 2012-07-26 00:32:48

+0

你不需要应用'.toHexString()' - 使用颜色名称 – 2012-07-26 00:34:22

+2

@LeeTaylor完全有效在锚标签上,它在每个浏览器上的年龄都受到支持。 – bfavaretto 2012-07-26 00:36:15

回答

4

UPDATE: 试试:

$('#navigation').hover(function(){ 
    $(this).css({'color':'your_color_when_mouse_in'}); 
}, function(){ 
    $(this).css({'color':'your_color_when_mouse_out'}); 
}); 
+2

它会永久性地将颜色更改为'your_color'。需要回调功能来恢复原始颜色。 – Mics 2012-07-26 00:49:53

+0

Yup @Mics我有它与回调工作。我希望能找到一种方法来使用a:hover/pseudo,但如果没有,我可以做很长的路。谢谢 – Bobney 2012-07-26 00:53:13

+0

@Mics是thx,加了它。 – levi 2012-07-26 00:57:48

0

质朴清新另类!

function(color){ 
    //creates a new style tag 
    var style = document.createElement('style'); 
    style.type = 'text/css'; 
    //setup your items as actually css instead of style attributes 
    vars css = '#post h1{color: '+color.toHexString()+'}'; 
    css += '#footer, #navigation a:hover{background: '+color.toHexString()+'}'; 
    //place said css into style tag 
    style.styleSheet.cssText = css; 
    //add style tag to document 
    $('head').append(style); 
} 

这将新<style>标记添加到包含你想要的CSS文档。再加上它可以让你使用css原生:hover