Jquery 从元素中移除悬停效果
我有一个工具提示,显示在具有特定类的元素上 工具提示的代码如下所示:Jquery 从元素中移除悬停效果,jquery,Jquery,我有一个工具提示,显示在具有特定类的元素上 工具提示的代码如下所示: // Tooltip only Text $('.masterTooltip').hover(function(){ // Hover over code var title = $(this).attr('title'); $(this).data('tipText', title).removeAttr('title'); $('<p class="to
// Tooltip only Text
$('.masterTooltip').hover(function(){
// Hover over code
var title = $(this).attr('title');
$(this).data('tipText', title).removeAttr('title');
$('<p class="tooltip"></p>')
.text(title)
.appendTo('body')
.fadeIn('slow');
}, function() {
// Hover out code
$(this).attr('title', $(this).data('tipText'));
$('.tooltip').remove();
}).mousemove(function(e) {
var mousex = e.pageX + 20; //Get X coordinates
var mousey = e.pageY + 10; //Get Y coordinates
$('.tooltip')
.css({ top: mousey, left: mousex })
});
//仅工具提示文本
$('.masterTooltip')。悬停(函数(){
//悬停在代码上方
var title=$(this.attr('title');
$(this.data('tipText',title.).removeAttr('title');
$(“”)
.正文(标题)
.appendTo('正文')
.fadeIn(“慢”);
},函数(){
//悬停代码
$(this.attr('title',$(this.data('tipText'));
$('.tooltip').remove();
}).mousemove(函数(e){
var mousex=e.pageX+20;//获取X坐标
var mousey=e.pageY+10;//获取Y坐标
$(“.tooltip”)
.css({top:mousey,left:mousex})
});
我正在寻找一种方法来禁用某些元素的工具提示。
我的第一次尝试是摆脱类。masterTooltip
认为这就足够了
在读了一些书之后,我明白了不是类本身负责悬停效果,而是元素拥有类。
因此,删除该类不会改变任何事情
关于如何删除和重新添加工具提示功能的提示
下面是一个简化版本的小提琴:
创建第二个类,该类应指示工具提示是否处于活动状态。在悬停函数中,仅当元素具有该活动类时才显示工具提示。切换此类以打开和关闭工具提示功能
$(“.masterTooltip”).hover(函数(){
if($(this).hasClass(“工具提示激活”)){
//显示工具提示的代码
}
} ...)
创建第二个类,该类应指示工具提示是否处于活动状态。在悬停函数中,仅当元素具有该活动类时才显示工具提示。切换此类以打开和关闭工具提示功能
$(“.masterTooltip”).hover(函数(){
if($(this).hasClass(“工具提示激活”)){
//显示工具提示的代码
}
} ...)
创建一个类来禁用工具提示
.no-tooltip {
pointer-events: none;
}
然后,您可以使用以下命令将第一个元素作为目标:
$('.masterTooltip').first().toggleClass('no-tooltip')
示例:创建一个类来禁用工具提示
.no-tooltip {
pointer-events: none;
}
然后,您可以使用以下命令将第一个元素作为目标:
$('.masterTooltip').first().toggleClass('no-tooltip')
示例:谢谢您的回答。两个答案都很相似,所以我选择了上面的一个,因为它稍微快一点。谢谢,谢谢你的回答。两个答案都很相似,所以我选择了上面的一个,因为它稍微快一点。非常感谢。