2012-02-14 14 views
1

У меня есть следующий HTML/JavaScript материалJQuery: Как использовать .css() метод

<html> 
<script type="text/javascript" src="jquery-1.7.1.min.js"></script> 
<script type="text/javascript"> 
$(document).mouseup(function(event) { 
    $("body").append("Entering function..."); 
    var element = event.target; 
    var color = element.css("background-color"); 
    $("body").append("That div is <span style='color:" + color + ";'>" + color + "</span>."); 
}); 
</script> 

<body> 
<div style="background-color:#ff1111;width:100px;height:100px;"></div> 
<div style="background-color:#223388;width:100px;height:100px;"></div> 
</body> 
</html> 

При работе в поджигатель с точки останова на «вар цвета = element.css (» цвет фона»);» он говорит мне, что css не определено.

Что я здесь делаю неправильно?

ответ

5

Причина, по которой element является элементом DOM, а не объектом jQuery. Для использования функции css вам нужен объект jQuery.

var color = $(element).css('background-color'); 
0

Попробуйте var element = $(event.target) вместо этого. Метод css является метод JQuery

1

Вы должны сделать

var color = $(element).css("background-color"); 
0

Чтобы добавить в линии стайлинга этот код поможет много

var color = $(element).css({'color':'red','background-color':'blue'}); 
0

Использование «события» в качестве параметра shrou ds значение глобального объекта event.

Используйте e или любое другое допустимое имя переменной в вашем методе обратного вызова.

$(document).mouseup(function(e) { 
... 

    var color = $(e.target).css("background-color"); 
    alert("Color is " + color); 
}); 
Смежные вопросы