javascript - 尝试使用 jquery 获取 css 值

标签 javascript jquery css spectrumjs

我正在尝试获取 background 的 css 值。我的尝试失败了,没有传递正确的值。我有一个 spectrum.js 颜色选择器,无论我选择哪种颜色 rgba(0,0,0,0) 总是被选中。当我在控制台中查看背景时,它会在 DOM 中正确显示。

有人知道为什么会失败吗?

<div class="container" id="outside-preview">
    <div class="container" id="inside-preview">
       <div id="image-square"></div>
    </div>
 </div>
$(".colorpicker").spectrum({
    color: "#FFF",
    showInput: true,
    className: "full-spectrum",
    showInitial: true,
    showPalette: true,
    showSelectionPalette: true,
    maxSelectionSize: 10,
    preferredFormat: "hex",
    localStorageKey: "spectrum.demo",
    change: function(color) {
        var eq =  $(this).index('.colorpicker');
        $('.container').eq(eq).css('background-color', color.toHexString())
    }
});

var color = $( "#outside-preview" ).css( "background-color" );
$("#result").html("That div is " + color + "");

Fiddle

最佳答案

您需要将读取 CSS 值的代码放在 change 处理程序中,以便它在做出选择后更新 #result 元素。您当前的代码仅在加载时读取它。

change: function(color) {
    var eq = $(this).index('.colorpicker');
    $('.container').eq(eq).css('background-color', color.toHexString())

    var color = $("#outside-preview").css("background-color");
    $("#result").html("That div is " + color);
},

Updated fiddle

关于javascript - 尝试使用 jquery 获取 css 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38724242/

相关文章:

javascript - 一个很好的 javascript 框架,它为 IE6-8 添加了 CSS3 支持,而在 IE9 中缺少 CSS3?

javascript 检查按钮是否被点击

javascript - 如何比较完整的 JSON 并将其绑定(bind)到另一个 JSON

javascript - 关于更改 url 或加载 url 的 Jquery 问题

html - ASP 复选框长文本未对齐

javascript - 如何将wso2聚合调解器的列表响应列表转换为单个列表

javascript - jQuery:如何在按键事件中过滤掉非字符键?

jQuery 事件文本颜色不变

javascript - jquery - 将附加元素链接到其父元素 :

javascript - <a> 标签仅执行两个功能之一