我在元素中使用了不同的标题属性框。我开发了一个简单的jQuery东西,但是......“有史以来最好的朋友”,IE,无法正常工作。很简单,不要像其他浏览器那样删除标题属性。结果:我的框显示了标题atrib和自己的浏览器框。我该如何解决这个问题? (代码下)。 注意:适用于Chrome,Safari,Firefox,Opera。但IE没有。
<title>Box</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css">
#dbox {
background: #003767;
padding: 5px 8px;
position: absolute;
margin: 20px;
color: white;
font-size: 14px;
display: inline;
/* border radius specif browsers */
-webkit-border-radius: 3px; /* safari, chrome */
-khtml-border-radius: 3px; /* ktml browsers */
-moz-border-radius: 3px; /* firefox, mozila found. */
-o-border-radius: 3px; /* opera, opmob */
}
</style>
<script type="text/javascript" src="js/jquery-1.5.2.min.js"></script>
<script type="text/javascript">
var dbox_time = 120;
var delay_time = 500;
$(document).ready(function(){
$('<div id="dbox"></div>').insertAfter(('body'));
$("[title != '']").each(function() {
$(this).addClass('lkBox');
$(this).css({border: '1px solid red'});
});
$('#dbox').empty();
$('#dbox').css({
display: 'none',
opacity: '0'
})
$(document).mousemove(function(e){
$('#dbox').css({
'left': e.pageX,
'top' : e.pageY
})
})
$('.lkBox').mouseover(function(){
$('#dbox').text($(this).attr('title'));
$('#dbox').css({display: 'block'})
.stop().animate({opacity: '1'}, dbox_time)
})
$('.lkBox').mouseout(function(){
$(this).attr('title', $('#dbox').text());
$('#dbox').css({display: 'none'})
.stop().animate({
opacity: '0'
}, dbox_time)
})
})
</script>
体:
<div style="float: left; width: 70%; padding: 50px;">
<h1>Examples: (mouse over the links)</h1>
<p>Curabitur lacus tortor, pellentesque eget <a href="#">interdum in</a>, auctor et lorem. In in quam lorem, vel <a href="#" title="i´m am a title =). must show">sagittis lec</a>. Donec felis leo, id fermentum nibh porttitor. Vestibulum ante <a href="#" title="">empy title (dont need to work)<span></span></a> primis. Lorem ipsum dolor sit amet, <a href="#" title="another title to show">lorem ipsum</a> elit.</p>
</div>
信息:如果在
之后发出警报$(this).attr('title', $('#dbox').text());
它适用于IE ..但我无法使用警报。
答案 0 :(得分:2)
我在FF4中测试了你的代码,我在IE中获得了相同的双标题工具提示行为(你的工具提示会弹出,然后内置的FF会在继续将鼠标悬停在链接上后大约一秒钟弹出)。从您发布的代码中,这是绝对预期的行为。
你需要做的是利用一个不同的属性(即:使用'dboxtitle'而不是'title'),或者你需要在mouseover / mouseout上动态删除和重新添加标题,以便浏览器看不到它(参考:Disabling browser tooltips on links and <abbr>s)。