鼠标单击行为

在诸如表单之类的容器对象的作用域中,将鼠标按键与操作和/或函数绑定。单击鼠标按键时,将调用该操作和/或函数。

鼠标单击行为的作用是:每当用户在某个控件或容器标记中单击鼠标按键时,执行操作或 JavaScript™ 函数。绑定作用域取决于该行为的相关标记的类型。如果将行为与诸如 form、div 或 body 之类的容器标记绑定,则每当在该容器内单击鼠标时,都将运行该操作/函数。如果将行为与诸如 input 标记之类的非容器标记绑定,则该绑定将仅应用于该控件内的单击操作。对于何谓在控件“内”单击,不同浏览器的解释略有不同,例如,在控件的边界/边框中单击是否属于在该控件“内”单击。鼠标单击行为的作用是:每当用户在某个控件或容器标记中单击鼠标按键时,执行操作或 JavaScript 函数。绑定作用域取决于该行为的相关标记的类型。如果将行为与诸如 form、div 或 body 之类的容器标记绑定,则每当在该容器内单击鼠标时,都将运行该操作/函数。如果将行为与诸如 input 标记之类的非容器标记绑定,则该绑定将仅应用于该控件内的单击操作。对于何谓在控件“内”单击,不同浏览器的解释略有不同,例如,在控件的边界/边框中单击是否属于在该控件“内”单击。

如果提供了函数,则当该按钮被单击时,将执行该函数。如果提供了操作或操作列表,则接着将执行那些操作。如果同时提供了函数和操作,则该函数可以通过返回 false 来禁止执行该操作。在这两种情况下,都不会执行该单击的“缺省”行为。例如,如果绑定了鼠标右键,则单击该按键时,不会执行缺省浏览器行为“显示上下文菜单”。

如果对 #body 指定 mouseclick 行为、指定 ALL 作为按钮并指定操作 NOTHING,则将在页面中禁用鼠标。

发送组件的 JSF 标记

<hx:behaviorRightMouse>

基本 HTML

诸如 <form><div> 之类的任何 HTML 容器标记或者诸如 <input> 之类的任何接受鼠标事件的 HTML 标记。

可以将多个鼠标单击操作连接到一个标记。将 #body 用作标记,以对整个页面指定单击行为。

JavaScript 构造函数

hX_5.addBehavior("id", "onmouse", new hX_5.JSFBehaviorMouseclick(attributes)); 其中

id

组件所连接至的 HTML 标记的 ID。

属性

逗号分隔的属性列表,其中每个属性都是一个加引号的字符串,此字符串包含使用冒号分隔的属性名称和值,例如,"label:MyLabel"。

受支持的事件

事件

描述

onmouse

注意特殊事件名称的用法。此行为修改多鼠标(和无鼠标)事件处理程序。

属性

表 1. 鼠标单击行为

属性名称

描述

button

要绑定的鼠标按键。ALL 表示鼠标上的所有按键。注意,可能不存在鼠标右键,例如,在 MAC 计算机上。

action

单击一个可单击实体时所要执行的一个或一组操作。通常需要该操作的一个或一组目标。

target

如果提供,则为页面中 input type='text' 字段的 ID。每次在菜单中选择一个菜单项时,该菜单项的文本都会设置为指定字段的值。此属性通常仅适用于生成一个仿真组合框的弹出菜单,即,您有一个输入字段,该字段带有一个顶级菜单为单按钮的邻近菜单,单击该按钮将显示菜单,从此菜单中选择一个菜单项将设置输入字段的值。

function

按下按键时要执行的 JavaScript 函数或 JavaScript 的内联字符串。

序列

在为该事件提供的任何其他处理程序运行完成后运行。

在执行所有操作/函数后,停止进行事件继续/冒泡。

API 调用

表 2. 鼠标单击 API 调用

API 调用

描述

object = setAttribute(attribute)

设置属性,或如果以前已设置属性,则更改其值。

string = getAttribute(attribute-name)

检索属性的当前值。

局限性

示例代码

在页面中,禁用鼠标。

hX.addBehavior("#body", "onmouse", new hX.JSFBehaviorMouseclick("scope:all", "action:nothing"));

在 div 中,禁用鼠标右键上下文菜单,并告诉用户已禁用该菜单。

hX.addBehavior("form1:div1", "onmouse", new hX.JSFBehaviorMouseclick("scope:right",
               "action:alert", "target:The context menu is disabled."));

反馈