-
div+css视频教程之BDO 元素 | bdo 对象
BDO 元素 | bdo 对象
允许作者为选定文本片断禁用双向法则。
成员表
下面的表格列出了 bdo 对象引出的成员。请单击左侧的标签来选择你想要查看的成员类型。
标签属性/属性
SHOW: 标签属性/属性 行为 集合 事件 滤镜 方法 对象 样式
标签属性 属性 描述 ACCESSKEY accessKey 设置或获取对象的快捷键。 ATOMICSELECTION 指定元素及其内容是否可以一不可见单位统一选择。 canHaveChildren 获取表明对象是否可以包含子对象的值。 canHaveHTML 获取表明对象是否可以包含丰富的 HTML 标签的值。 CLASS className 设置或获取对象的类。 clientHeight 获取对象的高度,不计算任何边距、边框、滚动条或可能应用到该对象的补白。 clientLeft 获取 offsetLeft 属性和客户区域的实际左边之间的距离。 clientTop 获取 offsetTop 属性和客户区域的实际顶端之间的距离。 clientWidth 获取对象的宽度,不计算任何边距、边框、滚动条或可能应用到该对象的补白。 CONTENTEDITABLE contentEditable 设置或获取表明用户是否可编辑对象内容的字符串。 DIR dir 设置或获取对象的阅读顺序。 DISABLED disabled 设置或获取控件的状态。 firstChild 获取对象的 childNodes 集合的第一个子对象的引用。 HIDEFOCUS hideFocus 设置或获取表明对象是否显式标明焦点的值。 ID id 获取标识对象的字符串。 innerHTML 设置或获取位于对象起始和结束标签内的 HTML。 innerText 设置或获取位于对象起始和结束标签内的文本。 isContentEditable 获取表明用户是否可编辑对象内容的值。 isDisabled 获取表明用户是否可与该对象交互的值。 isMultiLine 获取表明对象的内容是包含一行还是多行的值。 isTextEdit 获取是否可使用该对象创建一个 TextRange 对象。 LANG lang 设置或获取要使用的语言。 LANGUAGE language 设置或获取当前脚本编写用的语言。 lastChild 获取该对象 childNodes 集合中最后一个子对象的引用。 nextSibling 获取对此对象的下一个兄弟对象的引用。 nodeName 获取特定结点类型的名称。 nodeType 获取所需结点的类型。 nodeValue 设置或获取结点的值。 offsetHeight 获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度。 offsetLeft 获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置。 offsetParent 获取定义对象 offsetTop 和 offsetLeft 属性的容器对象的引用。 offsetTop 获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置。 offsetWidth 获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的宽度。 outerHTML 设置或获取对象及其内容的 HTML 形式。 outerText 设置或获取对象的文本。 ownerDocument 设置或获取结点关联的 document 对象。 parentElement 获取对象层次中的父对象。 parentNode 获取文档层次中的父对象。 parentTextEdit 获取文档层次中可用于创建包含原始对象的 TextRange 的容器对象。 previousSibling 获取对此对象的上一个兄弟对象的引用。 readyState 获取对象的当前状态。 scopeName 获取为该元素定义的命名空间。 scrollHeight 获取对象的滚动高度。 scrollLeft 设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离。 scrollTop 设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离。 scrollWidth 获取对象的滚动宽度。 sourceIndex 获取对象在源序中的依次位置,即对象出现在 document 的 all 集合中的顺序。 TABINDEX tabIndex 设置或获取定义对象的 Tab 顺序的索引。 tagName 获取对象的标签名称。 tagUrn 设置或获取在命名空间声明中指定的统一资源名称(URN)。 TITLE title 设置或获取对象的咨询信息(工具提示)。 UNSELECTABLE 指定该元素不可被选中。 标签属性/属性
行为
行为 描述 clientCaps 提供关于 Internet Explorer 支持的特性的信息,以及提供即用即装的方法。 download 下载文件并在下载完成后通知一个指定的回调函数。 homePage 包含关于用户主页的信息。 集合
集合 描述 all 返回对象所包含的元素集合的引用。 attributes 获取对象标签属性的集合。 childNodes 获取作为指定对象直接后代的 HTML 元素和 TextNode 对象的集合。 children 获取作为对象直接后代的 DHTML 对象的集合。 filters 获取应用于对象的滤镜集合。 事件
事件 描述 onactivate 当对象设置为活动元素时触发。 onafterupdate 当成功更新数据源对象中的关联对象后在数据绑定对象上触发。 onbeforeactivate 对象要被设置为当前元素前立即触发。 onbeforecopy 当选中区复制到系统剪贴板之前在源对象触发。 onbeforecut 当选中区从文档中删除之前在源对象触发。 onbeforedeactivate 在 activeElement 从当前对象变为父文档其它对象之前立即触发。 onbeforeeditfocus 在包含于可编辑元素内的对象进入用户界面激活状态前或可编辑容器变成控件选中区前触发。 onbeforepaste 在选中区从系统剪贴板粘贴到文档前在目标对象上触发。 onbeforeupdate 当成功更新数据源对象中的关联对象前在数据绑定对象上触发。 onblur 在对象失去输入焦点时触发。 oncellchange 在数据供应者中的数据变更时触发。 onclick 在用户用鼠标左键单击对象时触发。 oncontextmenu 在用户使用鼠标右键单击客户区打开上下文菜单时触发。 oncontrolselect 当用户将要对该对象制作一个控件选中区时触发。 oncopy 当用户复制对象或选中区,将其添加到系统剪贴板上时在源元素上触发。 oncut 当对象或选中区从文档中删除并添加到系统剪贴板上时在源元素上触发。 ondblclick 当用户双击对象时触发。 ondeactivate 当 activeElement 从当前对象变为父文档其它对象时触发。 ondrag 当进行拖曳操作时在源对象上持续触发。 ondragend 当用户在拖曳操作结束后释放鼠标时在源对象上触发。 ondragenter 当用户拖曳对象到一个合法拖曳目标时在目标元素上触发。 ondragleave 当用户在拖曳操作过程中将鼠标移出合法拖曳目标时在目标对象上触发。 ondragover 当用户拖曳对象划过合法拖曳目标时持续在目标元素上触发。 ondragstart 当用户开始拖曳文本选中区或选中对象时在源对象上触发。 ondrop 当鼠标按钮在拖曳操作过程中释放时在目标对象上触发。 onerrorupdate 更新数据源对象中的关联数据出错时在数据绑定对象上触发。 onfilterchange 当可视滤镜更改状态或完成转换时触发。 onfocus 当对象获得焦点时触发。 onfocusin 当元素将要被设置为焦点之前触发。 onfocusout 在移动焦点到其它元素之后立即触发于当前拥有焦点的元素上触发。 onhelp 当用户在浏览器为当前窗口时按 F1 键时触发。 onkeydown 当用户按下键盘按键时触发。 onkeypress 当用户按下字面键时触发。 onkeyup 当用户释放键盘按键时触发。 onlosecapture 当对象失去鼠标捕捉时触发。 onmousedown 当用户用任何鼠标按钮单击对象时触发。 onmouseenter 当用户将鼠标指针移动到对象内时触发。 onmouseleave 当用户将鼠标指针移出对象边界时触发。 onmousemove 当用户将鼠标划过对象时触发。 onmouseout 当用户将鼠标指针移出对象边界时触发。 onmouseover 当用户将鼠标指针移动到对象内时触发。 onmouseup 当用户在鼠标位于对象之上时释放鼠标按钮时触发。 onmousewheel 当鼠标滚轮按钮旋转时触发。 onmove 当对象移动时触发。 onmoveend 当对象停止移动时触发。 onmovestart 当对象开始移动时触发。 onpaste 当用户粘贴数据以便从系统剪贴板向文档传送数据时在目标对象上触发。 onpropertychange 当在对象上发生对象上发生属性更改时触发。 onreadystatechange 当对象状态变更时触发。 onresizeend 当用户更改完控件选中区中对象的尺寸时触发。 onresizestart 当用户开始更改控件选中区中对象的尺寸时触发。 onscroll 当用户滚动对象的滚动条时触发。 onselectstart 对象将要被选中时触发。 滤镜
滤镜属性 描述 Alpha 调整对象内容的不透明度。 AlphaImageLoader 在对象的边界和对象背景到内容之间显示图像,可选剪裁或缩放图像大小。当装入便携网络图像(PNG)时,从 0 到 100% 的 透明度都是支持的。 Barn 以开门或关门的运动方式显示对象的新内容。 BasicImage 调整对象内容的颜色处理、图像旋转或不透明度。 BlendTrans 以渐隐原始内容的形式显示对象的新内容。 Blinds 以打开或关闭盲点的运动方式显示对象的新内容。 Blur 模糊对象的内容以便使其看起来失去焦点。 CheckerBoard 以揭开覆盖在原始内容上的棋盘的形式显示对象的新内容。 Chroma 将对象内容的指定颜色显示为透明。 Compositor 以新旧内容逻辑颜色组合的形式显示对象的新内容。每个版本的颜色和 alpha 值都会被计算用来决定输出图像的最终颜色。 DropShadow 创建对象内容的实体阴影,偏移量位于指定方向。这将使得内容看起来是浮动的因此会产生阴影。 Emboss 使用灰度值对对象以浮雕纹理显示。 Engrave 使用灰度值对对象以雕刻纹理显示。 Fade 以渐隐原始内容的形式显示对象的新内容。 FlipH 以沿水平方向翻转的形式显示对象内容。 FlipV 以沿垂直方向翻转的形式显示对象内容。 Glow 在对象边缘外侧添加光晕以便使其看起来像发光的样子。 Gradient 在对象的背景和内容之间显示一个渐变色彩的表面。 GradientWipe 以在原有内容上覆盖渐变带的形式显示对象的新内容。 Gray 以灰度显示对象内容。 ICMFilter 根据图像颜色管理(ICM)配置文件转换对象的彩色内容。这将允许指定内容的显示效果得以改善,或者在打印机或监视器等硬件设备上模拟显示。 Inset 以对角线方向显示对象的新内容。 Invert 反转对象内容的色调、饱和度和亮度。 Iris 以彩虹效果显示对象的新内容,这与照相机光圈打开相似。 Light 在对象的内容上创建灯光效果。 MaskFilter 将对象内容的透明像素显示为彩色遮罩,将非透明像素显示为透明。 Matrix 使用矩阵变换缩放、旋转或显现对象的内容。 MotionBlur 以运动模糊的效果显示对象内容。 Pixelate 将对象的内容显示为彩色方块,其颜色取决于该方块所替代区域的平均颜色值。此滤镜显示可用于切换。 RadialWipe 以辐射状擦除的形式显现对象的新内容。 RandomBars 以随机像素线爆炸的形式显现对象的新内容。 RandomDissolve 以随机像素爆炸的形式显现对象的新内容。 Redirect 目前还不支持。 RevealTrans 使用 24 种预先定义的切换效果显现对象的新内容。 Shadow 创建对象内容的实体阴影,偏移量位于指定方向。这将创建阴影效果。 Slide 以图像滑行的形式显现对象的新内容。 Spiral 以螺旋运动的形式显现对象的新内容。 Stretch 以拉伸覆盖原始内容的形式显现对象的新内容。有一个选项类似立方体从一个表面转到另外一个表面。 Strips 以条形覆盖的形式显现对象的原始内容,好像有一把锯将原始内容锯开。 Wave 在对象的内容上执行垂直方向的正弦波扭曲。 Wheel 以旋转运动的形式显现对象的新内容,好像轮子滚过原始内容。 Xray 更改对象内容的颜色深度将其以黑白显示。 Zigzag 在对象上将对象的新内容进行来回移动以便覆盖原始内容。 方法
方法 描述 appendChild 给对象追加一个子元素。 applyElement 使得元素成为其它元素的子元素或父元素。 blur 使元素失去焦点并触发 onblur 事件。 clearAttributes 从对象中删除全部标签属性和值。 cloneNode 从文档层次中复制对对象的引用。 componentFromPoint 通过特定事件返回对象在指定坐标下的位置。 fireEvent 触发对象的指定事件。 focus 使得元素得到焦点并执行由 onfocus 事件指定的代码。 getAdjacentText 返回邻接文本字符串。 getAttributeNode 获取由 attribute.name 属性引用的 attribute 对象。 getElementsByTagName 获取基于指定元素名称的对象集合。 getExpression 获取给定属性的表达式。 hasChildNodes 返回表明对象是否有子对象的值。 insertAdjacentElement 在指定位置插入元素。 insertBefore 在文档层次中插入元素。 mergeAttributes 复制所有读/写标签属性到指定元素。 normalize 合并邻接 TextNode 对象以便生成一个常规的文档对象模型。 removeAttributeNode 从对象中删除删除 attribute 对象。 removeChild 从元素上删除子结点。 removeExpression 从指定属性中删除表达式。 removeNode 从文档层次中删除对象。 replaceAdjacentText 替换元素的邻接文本。 replaceChild 用新的子元素替换已有的子元素。 replaceNode 用其它元素替换对象。 setActive 设置对象为当前对象而不将对象置为焦点。 setAttributeNode 设置 attribute 对象为对象的一部分。 setExpression 设置指定对象的表达式。 swapNode 交换文档层次中两个对象的位置。 对象
对象 描述 currentStyle 代表了在全局样式表、内嵌样式和 HTML 标签属性中指定的对象格式和样式。 样式
注释
BDO 元素可用于控制文本块的阅读顺序。
Unicode 双向法则会根据所嵌入的字符序列的内在方向自动反转之。例如,英语文档的基本方向是由左至右(ltr)。如果此文档内某一段包含了阅读顺序为由右至左(rtl)的语言,你就可以应用此双向法则来反转该语言的方向。
双向法则和 DIR 标签属性通常足以应付嵌入方向的变更。但是,当你将格式化后的文本输出到双向法则时将可能发生不正确的表述。例如,为电子邮件格式化后的包含英语和希伯莱语的文本段将被双向法则不正确的转换。由于希伯莱语文本的阅读顺序在电子邮件中已经转换过了,对其应用双向法则将再一次对该文本进行转换。
BDO 元素将关闭双向法则并控制阅读顺序。当你使用 BDO 元素时必需附带 DIR 标签属性。
此元素在 Microsoft® Internet Explorer 5.0 的 HTML 和脚本中可用。
此元素是内嵌元素。
此元素需要关闭标签。
示例
下面的例子使用 BDO 元素来纠正一个文本块的阅读顺序。
下面的字符串包含了以由左至右的英语和由右至左的希伯莱语书写的文本: This fragment is in English, WERBEH NI SI TNEMGARF SIHT.
假定由右至左的文本(WERBEH NI SI TNEMGARF SIHT.)已经转换过了,也就是说其显示方向正确。如果你继续对此文本应用 Unicode 双向法则,此文本就会被第二次转换,以致会以由左至左而不是由右至左的方向显示。
解决办法是覆盖双向法则,将这一个阅读顺序正确的文本块放置在 DIR 标签属性设置为 ltr 的 BDO 元素内。
<BDO DIR="ltr">This fragment is in English, WERBEH NI SI TNEMGARF SIHT.</BDO>