本文目录
- vs2013中OnMouseMove怎么使用
- JS事件里,window.onmousemove 和 document.onmousemove 有什么区别
- 网页制作中onmouseup onmousemove是什么意思
- js onmousemove和houver 的区别
vs2013中OnMouseMove怎么使用
按照C#的编程规范,发生XXX事件的时候,通常会在OnXXX里写起实现代码,并且可以重写OnXXX来自定义控件。举例来说,微软在开发Button控件的时候,是在OnMouseMove里处理MouseMove事件的。重写如下,你可以自己试试:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
Button b = new Button();
b.Location = new Point(10, 10);
b.Text = “button1“;
this.Controls.Add(b);
MyButton mb = new MyButton();
mb.Location = new Point(10, 50);
mb.Text = “myButton1“;
this.Controls.Add(mb);
}
}
public class MyButton : Button
{
protected override void OnMouseMove(MouseEventArgs mevent)
{
this.Text = mevent.Location.ToString();
base.OnMouseMove(mevent);
}
}
JS事件里,window.onmousemove 和 document.onmousemove 有什么区别
document 是window的属性=窗口下的页面。
就效果来说 这两个是一样的,但!尽量不使用window对象来绑定这种事件。
因为你的目的是监听鼠标在页面上移动,document代表当前的文档(页面)。所以就语义来讲要使用document。你监听的是页面事件而不是窗体事件,像改变location这种才需要用到window对象。
试验一下这段代码。结果应该是先alert 2 然后是alert 1。
window.onclick=function(){
alert(1);
}
document.onclick = function(){
alert(2);
}
也就是说document在window的上一层。最底层是window对象可以理解为dom的根对象。
如果你阻止事件冒泡 也就是如下代码,你会发现 不会出现alert 1了,也就是说事件在document层阻止了向父级元素传递。
window.onclick=function(){
alert(1);
}
document.onclick = function(e){
e.stopPropagation()
alert(2);
}
~
网页制作中onmouseup onmousemove是什么意思
onMouseover当鼠标经过的时候,触发 = 后面的脚本函数onMouseout 当鼠标离开 。。onMouseUP 当鼠标 按下又抬起。。。onmousemove 当鼠标移动。。onmousedown 当鼠标按下时。。
js onmousemove和houver 的区别
onmousemove是当鼠标在元素上面移动时触发的事件,hover则是当鼠标放在元素上(不管有没有移动)时元素的样式设定。前者是js,后者是css。hover只能设定元素的样式(大小、颜色、边框、字体等),而onmouseover可以运行几乎任何脚本代码,两者不可同日而语。如果你只是想当鼠标移到元素上时改变其属性,建议用hover,这样最简单、效率最高。如果是需要css无法胜任的复杂效果,则用onmousemove(但建议最好改用onmouseover与onmouseout的组合,原因自己去百度)。