需求:自动生成目标元素的Xpath字符串目前思路:对document对象添加事件监听,当对页面元素进行操作时,获取activeElement,然后生成Xpath问题:目前input的text,Button,radio和checkbox测试都没问题,但是当操作select标签下的option时,activeElement返回的还是select的element对象有什么办法能获取到option的element对象吗
5 回答
肥皂起泡泡
TA贡献1829条经验 获得超6个赞
var act = document.activeElement; if (act.tagName=="SELECT" && act.selectedIndex>=0) { act = act.options[act.selectedIndex]; } alert(act.tagName);
叮当猫咪
TA贡献1776条经验 获得超12个赞
用jquer啊,$(document).find("select option").each(function(i, optElem){
//optElem为opt对象
});
如果非得用纯js那么可以使用getElementsByTagName方法,返回一个元素数组,如document.getElementsByTagName("select"),再调用返回元素的
selecElement。getElementsByTagName(“option”)获取option元素
document的常用方法:
getElementById 获取对 ID 标签属性为指定值的第一个对象的引用。
getElementsByName 根据 NAME 标签属性的值获取对象的集合。
getElementsByTagName 获取基于指定元素名称的对象集合。
鸿蒙传说
TA贡献1865条经验 获得超7个赞
不知道你具体代码怎么写的,是否可以对option绑定事件,通过activeElement和event的targetElement配合使用,选择合适的目标元素,或者对select绑定事件的时候,获取select下选中的option来作为目标元素,用jquer都是比较好写的
ibeautiful
TA贡献1993条经验 获得超5个赞
对于不同类型的元素不要总是使用activeElement获取,可以动过点击事件的currentTarget等等对象,你再研究下,js写的不多
添加回答
举报
0/150
提交
取消