我可以在IE页面上的按钮和visio事件之间建立链接吗? (例如:只需单击IE页面上的按钮即可更改形状的颜色)
答案 0 :(得分:0)
是的,您应该查看jquery
的入门文档html:
<button id="mybutton" />
<div id="myshape">blabla</div>
javascript:
$('#mybutton').click(function() {
$('#myshape').css('background-color', '#555555');
});
答案 1 :(得分:0)
除非您也可以访问IE中的HTML内容,否则不是很容易,但您可以使用VBA类来实现“withevents”私有变量来捕获对页面上特定元素的引用,并且一个事件处理程序,用于响应基于浏览器的事件。例如。在“clsHTML”课程中:
Private WithEvents el As MSHTML.HTMLInputElement
Public Sub SetElement(t As MSHTML.HTMLInputElement)
Set el = t
End Sub
Private Function el_onchange() As Boolean
Debug.Print "captured change: value = " & el.Value
End Function
在其他代码中,创建一个类的实例,并使用对IE中页面元素的引用来调用“SetElement”:
Dim objHTML As clsHTML 'global variable
Sub TestEvents()
Dim IE As Object
'set up your IE reference....
Set objHTML = New clsHTML
objHTML.SetElement IE.document.getElementById("tester2")
Debug.Print "set capture"
End Sub
在这种情况下,您正在捕获文本框中的“更改”事件,但其他元素将公开不同的事件....
编辑:我在Excel中对此进行了测试,但我假设类似的内容也适用于Visio。
Edit2:你可能要比在Visio中创建一个表单来处理这个问题要好,而不是坚持自动化IE。