我需要学习如何使用 IE8 文档模式右键单击网页中的元素。
我正在使用的网页是 PTC 的 Windchill 10,我相信它是使用 sencha 的 extjs 创建的。我不确定 extjs 是否将 .click() 方法注册为始终单击。有些元素我需要使用 onmousedown 和 onmouseup 才能点击才能工作。
我已经在 iframe 对象 psbIFrame 上测试了这个函数来执行常规的 .click() 操作,并且它使用 autohotkey 来工作。
自动热键语法
click_event:=window_handle.document.all.psbIFrame.contentWindow.document.createEventObject()
click_event.button:=1 ;left button down
links[a_index-1].fireEvent("onclick", click_event)
Javascript 类型语法
document.all.psbIFrame.contentWindow.document.createEventObject();
click_event.button=1;
links[a_index-1].fireEvent("onclick", click_event)
我也可以将其用于 iframe 之外的其他元素。
event:=document.createEventObject()
event.button:=1 ;left button down
element.fireEvent("onmousedown", event)
element.fireEvent("onmouseup", event)
由于文档模式是ie8,所以这些都是左键单击。当我将按钮设置为 2 并执行其中任何一个操作时,我没有发生任何事情。
是否有其他人可以访问可以帮助我进行测试的 Windchill 页面?
最佳答案
element.fireEvent("oncontextmenu")
这正是我期望右键单击执行的操作。使用 fireEvent,大多数时候您甚至不需要初始化事件。 FireEvent 将在后台执行此操作(假设有一些默认值)。我不知道我在问题中将按钮更改为 2 所做的事情是否有意义。 http://help.dottoro.com/ljvtddtm.php对于火灾事件 http://help.dottoro.com/lagstsiq.php/#MouseEvent_Members鼠标事件列表
关于javascript - 将右键单击事件发送到 Internet Explorer 8 文档中 iframe 中的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20059829/