2015-01-03 3 views
0

Как я могу изменить свой цвет наведите на задний план?jQuery изменение свойства класса hover

<style> 
     .myhoverclass {background:#FFF;} 
    </style> 

Я переключаться с этим кодом:

$('.box a').hover(
     function(){ $(this).toggleClass('myhoverclass') } 
    ) 

Но когда я изменяю .myhoverclass с ColorPicker ...

$('#li-a-bgcolor').ColorPicker({ 
    onChange: function (hsb, hex, rgb) { 
     $('#li-a-bgcolor').css('backgroundColor', '#' + hex); 
     $('.myhoverclass').css('background-color', '#' + hex); 
    } 
    }); 

... цветные кадры белый. Где ошибка?

Thank you.

+0

Убедитесь, что функция '.css()' имеет 'backgroundColor', а не' background-color' - это была только опечатка? (хотя оба должны работать?) –

+0

Ваша проблема в вашем мышлении. Вы думаете, что можете изменить определение '.myhoverclass', когда на самом деле вы меняете фоновый цвет элемента' .box a', когда у них есть класс '.myhoverclass'. См. Мой обновленный ответ ниже ... – prograhammer

ответ

0

Хорошо, если я правильно понимаю, вы пытаетесь выбрать цвет и изменить цвет наведения. Проблема в том, что вы хотите изменить определение/правило класса для .myhoverclass {background:#FFF;}, и это очень сложно сделать.

Вместо этого я предлагаю решение так: http://jsfiddle.net/k6kp1e5n/

HTML

<div id="colorPicker"> 
    <div style="background-color: #0000FF"></div> 
    <input type="text" value="#0000FF"> 
</div> 
<br><br> 
<div class="box"> 
    <a href="#">Hover me</a> 
</div> 

JS

$('#colorPicker').ColorPicker({ 
    color: '#0000FF', 
    onChange: function(hsb, hex, rgb) { 
     $('#colorPicker div').css('backgroundColor', '#' + hex); 
     $('#colorPicker input').val('#' + hex); 
    } 
}); 

// Handles "hovering" 
$('.box a').on('mouseenter', function (e) { 
    $(this).css('background-color', $('#colorPicker input').val()); 
}); 
$('.box a').on('mouseout', function(e){ 
    $(this).css('background-color','#FFF'); 
}); 

CSS

.box {background:#FFF;} 
+0

Да, это была правильная идея. Большое спасибо! Я счастлив! –

0

Сделайте это так просто. Создайте два класса и определите цвета для каждого класса. Когда вы наводите курсор мыши и нажимаете мыши, добавьте и удалите классы.

Смежные вопросы