Switch content of div when another div gets hovered on(当另一个 div 悬停时切换 div 的内容)
问题描述
我无法让这样的事情发挥作用.我有一系列 DIVS(1 到 8),当您将鼠标悬停在一个 div 上时,我想用 #replace 的内容(当前设置为隐藏)更改其他 div 的内容<div id="replace" style="visibility:hidden;">Bla Bla Bla</div>
I'm having trouble getting something like this to work. I've got a series of DIVS (1 through 8) and when you hover over one div, I want to literally change the contents of one of the other divs with the contents of #replace (which is current set to hidden)
<div id="replace" style="visibility:hidden;">Bla Bla Bla</div>
这是我目前得到的:
$('#1').on({
mouseover: function(){
$('#2').replaceWith(jQuery('#replace'));
},
mouseleave: function(){
$('#2').replaceWith(jQuery('#2'));
},
click: function(){
$('#2').replaceWith(jQuery('#replace'));
$('#1').off('mouseleave mouseover');
}
});
根本没有真正的影响——我的逻辑很糟糕,我做得不好等等......?
Not really having an effect at all - so is my logic bad, how i'm doing it bad, etc...?
推荐答案
jsBin demo一个>
<div class="box">This is DIV #1 :) </div>
为所有 8 个元素添加一个类 .box
并执行以下操作:
Add a class .box
to all your 8 elements and do:
jQuery(function($){
var replaceText = $('#replace').text();
var memorizeText = '';
$('.box').on({
mouseenter: function(){
memorizeText = $(this).next('.box').text(); // memorize text
$(this).next('.box').text(replaceText);
},
mouseleave: function(){
$(this).next('.box').text( memorizeText ); // restore memorized text
},
click: function(){
$(this).next('.box').text( replaceText );
$(this).off('mouseleave mouseenter');
}
});
});
这篇关于当另一个 div 悬停时切换 div 的内容的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:当另一个 div 悬停时切换 div 的内容
基础教程推荐
- 动态更新多个选择框 2022-01-01
- Karma-Jasmine:如何正确监视 Modal? 2022-01-01
- 角度Apollo设置WatchQuery结果为可用变量 2022-01-01
- 在 JS 中获取客户端时区(不是 GMT 偏移量) 2022-01-01
- 有没有办法使用OpenLayers更改OpenStreetMap中某些要素 2022-09-06
- 在for循环中使用setTimeout 2022-01-01
- 我什么时候应该在导入时使用方括号 2022-01-01
- 响应更改 div 大小保持纵横比 2022-01-01
- 悬停时滑动输入并停留几秒钟 2022-01-01
- 当用户滚动离开时如何暂停 youtube 嵌入 2022-01-01