javascript - 更改另一个 div 鼠标悬停上的多个 div 内容,无需 css/使用 xml 源文件

标签 javascript jquery html ajax xml

我正在处理 this site ,我需要根据我的情况更改 image_previewtitle_previewdescription_previewlink_preview 的内容悬停在(例如:鼠标悬停 "button_a"= image1.png, iliketitle, ulikedesc, welikelink)。

我尝试过使用像this这样的CSS解决方案和 this ,但我无法让它们按我需要的方式工作。

由于页面将有许多 button_#(50-100 个按钮),我认为 css 不是一个正确的选择。 所以我正在寻找一种不使用 css 的方法,如果使用 xml 源文件,效果会更好,这样管理要显示的内容会更容易对于每个按钮。我只找到this谈论我需要的 xml,但我不确定这正是我需要的。

最佳答案

您的按钮有一个类(例如.btn),并且每个按钮的关联数据存储在某处,假设每个按钮都有一个data-*属性,该属性指向到正确的数据。

$('.btn').hover(function() {
    var data = $(this).data('something');
    if(data == "b1") {
        //assign the values related to b1
    }
    else if(data == "b2") {
        //assign the values related to b2
    }
    //and so on
}

如果您有很多这样的按钮,那么数据可以是对包含正确信息的数组的引用。

这是一个jsfiddle DEMO .

这是updated DEMO .

编辑:

.hover() 可以采用两个处理程序,当鼠标离开元素时,第二个处理程序将处理。

yourElement.hover(
    function() {
        //mouse is on the element, do stuff
    },
    function() {
        //mouse is out, do other stuff
    }
);

您可以使用一个函数来设置默认值并在悬停的第二个函数中调用该函数。

jsfiddle DEMO

关于javascript - 更改另一个 div 鼠标悬停上的多个 div 内容,无需 css/使用 xml 源文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30285250/

相关文章:

javascript - 如何在超时后杀死 spawnSync

javascript - jQuery.data() 适用于 Mac OS WebKit,但不适用于 iPhone OS?

c# - 将 Html.Partial 添加到 Javascript

html - 上传和嵌入在桌面浏览器中播放但不在移动浏览器中播放的视频

html - 图标不显示

javascript - 防止回调执行直到输入停止

javascript - 在单独层次结构的两个元素之间显示 <div>

php - 简单的 AJAX 书签

javascript - 将 javascript onclick 事件附加到 anchor 标记

javascript - 正则表达式精确文本匹配不起作用