jquery - 在鼠标悬停时根据子 div 的属性设置父 div 的背景图像

标签 jquery css background-image

出于某种原因,这对我不起作用。我有以下代码。

当悬停在 homeShowingWrapper div 上时,homeHero div 的背景应该更改为 data-featured-image 属性的值homeShowingWrapper 部分。

这是我的 HTML 结构:

<div id="homeHero">
    <div class="homeShowingWrapper" data-featured-image="/uploads/Hover-Background.jpg">
        Content
    </div>
</div>

还有我的 JQuery 函数:

jQuery( document ).ready( function( $ ) {

    $("#homeHero").css("background-image" , "url(/uploads/Initial-Background.jpg);");

    $(".homeShowingWrapper").mouseover(function() {

        // Background-image
        var background = $(this).attr('data-featured-image');

        $("#homeHero").css("background-image" , "url(" + background + ");");

    });

});

知道为什么 $("#homeHero").css("background-image", "url("+ background + ");"); 行不应用背景图片?

最佳答案

正如 Nawed Khan 在评论中提到的,读取数据属性的正确方法是使用 data()

I set up a jsFiddle进行故障排除,发现不仅需要使用data('featured-image'),而且jQuery .css() 中的分号也需要被省略以使其正常工作。

关于jquery - 在鼠标悬停时根据子 div 的属性设置父 div 的背景图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54429864/

相关文章:

javascript - 使用 ajax 和 jQuery 发送 HTML 表单到 PHP

php - 寻找有关实现 AJAX 项目的语法指导

jquery - 如何将带有警告消息的验证更改为带有文本框周围红色边框的验证?

javascript - 无法写入 "css"文件(错误代码 : EISDIR) Grunt cssmin

带有切换功能的 jquery 帮助

CSS 背景从 5 部分图像、大小到文本编译

css - 如何在 Material ui 对话框组件上添加背景图像

jquery - 当窗口小于 900px 时,有没有办法只调用一次函数

javascript - 在 Javascript 中从 JSON 数据中检索数据

javascript - 更改页面滚动上的背景图像以创建动画? Canvas 更有效率吗?