嗨我有一个功能使用jQuery 1.3.2工作正常,但现在我试图用1.4.2运行它,我得到以下错误"事件未定义".这里是简化的代码:
<div id="mapcontainer><img href="" usemap="#rage_image_map">
<div id="mytext"></div>
</div>
<map name="rage_image_map">
<area shape="poly" href="asthma-data/county-asthma-profiles/del-norte-county-asthma-profile" coords="12,7,10,12" alt="Del Norte County">
<area shape="poly" href="asthma-data/county-asthma-profiles/siskyou-county-asthma-profile" coords="42,3,42,6,40,8,36,11" alt="Siskyou County">
</map>
Run Code Online (Sandbox Code Playgroud)
这是功能:
$(function () {
$('area').bind('mouseover mouseleave', function () {
var mytext = $('#mytext');
if (event.type == "mouseover") {
var countyname = $(this).attr("alt");
mytext.html(countyname);
mytext.addClass('textcontainer');
} else {
mytext.text('');
mytext.removeClass('textcontainer');
}
})
});
Run Code Online (Sandbox Code Playgroud)
该类使div mytext可见并在其周围放置一条线,显示正在翻转的县名.
firebug中的错误中断位于定义mytext变量的行上.但我怀疑问题是下面的语法问题:if(event.type =="mouseover")
谢谢,丽兹
您需要命名事件参数,如下所示:
$('area').bind('mouseover mouseleave', function(event){
^ add this
Run Code Online (Sandbox Code Playgroud)
它.hover()虽然使用起来有点容易,例如:
$(function() {
$('area').hover(function(){
var countyname = $(this).attr("alt");
$('#mytext').html(countyname).addClass('textcontainer');
}, function() {
$('#mytext').text('').removeClass('textcontainer');
});
});
Run Code Online (Sandbox Code Playgroud)
这不正是相同,但好一点通常情况下,它使用mouseenter和mouseleave,而不是mouseover和mouseout(所以它不会进入/离开的儿童在火灾).
| 归档时间: |
|
| 查看次数: |
2449 次 |
| 最近记录: |