【问题标题】:"jquery-Target has no method .css()"“jquery-Target 没有方法 .css()”
【发布时间】:2011-11-25 20:57:39
【问题描述】:

我正在尝试获取我单击的 div 元素的 CSS 背景颜色。现在我已经尝试过了(不要认为它需要更多代码):

...
    var onColorClicked = function(color) {
    var $target = (color.target);

    console.log($target.innerHTML);
    console.log($target.css('background'));

}, ....

所以,第一个日志打印的内容正确,没有错误,但第二个日志显示:

Uncaught TypeError: Object # has no method 'css'

在我看来,$target 包含正确的目标,但它仍然存在问题。 这是我之前定义的 CSS:

            $color.css({
                left: 64,
                top: (i*10)-188,
                "z-index": 80,
                'background': "#e40613"     
            });

.css() 有什么问题?

【问题讨论】:

    标签: javascript css events background target


    【解决方案1】:

    应该是:

    // mind the -> 
    var $target = $(color.target);
    
    console.log($target.html());
    console.log($target.css('background'));
    

    顺便说一句,javascript 中的变量不需要以$ 开头,因此它可以是target 而不是$target

    【讨论】:

    • 不过,使用 $ 来表示 jQuery 化对象是(相对)常见的。
    • @DᴀᴠᴇNᴇᴡᴛᴏɴ 是的,我发现自己也做过几次,但不确定 OP 是否知道。
    • 谢谢,前面的 $ (color.target) 不见了。然后它只适用于 html()。但是要获取背景色,参数必须是:$target.css('background-color')。这行得通!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-09
    • 2012-10-07
    相关资源
    最近更新 更多