2015-01-04 126 views
0

我想知道是否有人可以帮助理解这个Javascript语法。了解Javascript语法?

可以说我有以下几点:

<script> 
    $(function(){ 
     $("#contactbutton").click(function(event){ 
      $("#dialog").dialog({width:500}); 
     }); 
    }); 
</script> 

据我所知,第一行是测试如果DOM是准备和加载。然后它将控制传递给内部函数。

此内部函数获取具有接触按钮ID的元素,对于click事件,将控制权交给下一个函数。

这个内部函数获取带有ID对话框的elemnt并调用.dialog方法显示对话框。不过,我不知道:

function(event) 

什么是事件参数在这里,我们为什么需要它?另外,这可以重新命名为我们想要的任何东西吗?

谢谢,

+1

是的,它可以重命名或删除。但您可能想要访问该事件以查看(例如)发生鼠标点击的坐标。该信息是事件对象的一部分。 – Sirko

+0

'事件'参数是一个内置的参数,你似乎并不需要它,所以你可以删除它 – adeneo

+0

真棒,谢谢 – user3476554

回答

2

这实际上是一个可以在该函数内访问的对象。通常它被称为事件参考。该对象保存关于函数和事件的细节,函数,变量等,使您可以处理事件和访问它的属性。您可以在您为处理程序的第一个参数设置名称后访问它,即function(event) { }

在某些情况下,假设您想阻止可能导航页面的锚链接的默认事件到stackoverflow.com。 preventDefault是一个可以做到这一点的函数,也就是防止默认事件。在这种情况下,将阻止导航到stackoverflow.com。如果您已将名称事件分配给处理程序的第一个参数,则可以使用语法event.preventDefault()访问preventDefault函数。

又例如,在onkeydown事件中,您可以访问使用event.keyCode按下哪个键。