flex中event.preventDefault()方法取消事件的默认行为

随心笔谈3年前发布 admin
243 0 0

文章摘要

这篇文章讨论了如何在数据网格中通过`event.preventDefault()`来阻止特定事件的默认行为。通过示例代码,展示了当点击数据网格的第一和第四项时,`itemEdit`事件不会触发。文章还解释了默认行为的概念,例如文本输入时显示字符,以及如何使用`preventDefault()`方法来阻止这些默认行为。同时,文章提到了一些例外情况,如与`Event.REMOVED`事件关联的默认行为无法阻止。此外,文章还建议使用`Event.cancelable`属性来检查是否可以防止特定事件的默认行为。如果您对事件传播、阻止事件传播或JavaScript事件处理感兴趣,文章还推荐了一些相关资源。


先看一个例子:

复制代码 代码如下:

itemEditEnd=”itemEditEndHandler(event)” itemEditBeginning=”itemEditBeginningHandler(event)”

>

其中itemEditBeginningHandler就可以这样控制:

复制代码 代码如下:

private function itemEditBeginningHandler(event:DataGridEvent): void

{

if (event.columnIndex==0 || event.columnIndex==3 ){

event.preventDefault();

}

}

当点击datagrid的第一和第四项时,itemEdit事件将不起作用。

下面是event.preventDefault()说明

如果可以取消事件的默认行为,则取消该行为。

许多事件都有默认执行的关联行为。例如,如果用户在文本字段中键入一个字符,则默认行为就是在文本字段中显示该字符。由于可以取消 TextEvent.TEXT_INPUT 事件的默认行为,因此您可以使用 preventDefault() 方法来防止显示该字符。

不可取消行为的一个示例是与 Event.REMOVED 事件关联的默认行为,只要 Flash Player 从显示列表中删除显示对象,就会生成该事件。由于无法取消默认行为(删除元素),因此 preventDefault() 方法对此默认行为无效。

您可以使用 Event.cancelable 属性来检查是否可以防止与特定事件关联的默认行为。如果Event.cancelable 的值为 true ,则可以使用 preventDefault() 来取消事件;否则,preventDefault() 无效。

您可能感兴趣的文章:jquery取消事件冒泡的三种方法(推荐)js如何取消事件冒泡关于捕获用户何时点击window.onbeforeunload的取消事件Javascript Event(事件)的传播与冒泡JavaScript实现事件的中断传播和行为阻止方法示例JavaScript中使用stopPropagation函数停止事件传播例子阻止事件(取消浏览器对事件的默认行为并阻止其传播)JS传播事件、取消事件默认行为、阻止事件传播详解

© 版权声明

相关文章