jQuery学习过程中遇到的问题
JScript code
<script type="text/javascript">
//<![CDATA[
$(function(){
var x = 10;
var y = 20;
$("a.tooltip").mouseover(function(e){
this.myTitle = this.title;
this.title = "";
var tooltip = "<div id='tooltip'><img src='"+ this.href +"' alt='产品预览图'/><\/div>"; //创建 div 元素
$("body").append(tooltip); //把它追加到文档中
$("#tooltip")
.css({
"top": (e.pageY+y) + "px",
"left": (e.pageX+x) + "px"
}).show("fast"); //设置x坐标和y坐标,并且显示
}).mouseout(function(){
this.title = this.myTitle;
$("#tooltip").remove(); //移除
}).mousemove(function(e){
$("#tooltip")
.css({
"top": (e.pageY+y) + "px",
"left": (e.pageX+x) + "px"
});
});
})
//]]>
</script>
最近买了一本书在学习jQuery,在书上的一个案例中,看到这样一段代码,里面有点地方不明白,希望达人帮忙指点指点:
问题一:... $("a.tooltip").mouseover(function(e){ ...
这段代码中的 function(e) 为什么在括号里加了一个e,这个e是什么意思?
问题二:... "top": (e.pageY+y) + "px",
"left": (e.pageX+x) + "px" ...
这段代码中为什么使用e.pageY+"px"来设置y坐标?这样设置是固定格式吗?
诚心求教问题,先谢谢大家..
------解决方案--------------------楼主参考下
Event 对象代表事件的状态,比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按钮的状态。
http://www.w3school.com.cn/htmldom/dom_obj_event.asp
看明白了,你的问题也明白了
------解决方案--------------------
e是事件对象,
e.pageY,这里是鼠标移动所以这里是鼠标的y坐标
使用e.pageY+"px"来设置y坐标,应该是让tooltip当鼠标在tooltip中移动时,tooktip的提示跟随鼠标移动,
------解决方案--------------------
------解决方案--------------------在FF下 涉及尺寸大小的都得加“px”,譬如 width:100px