更新日志
开发日志(Changelog)
版本 1.0.30 - 2024年12月18日
修改功能:
1. 变更属性IsNewWindowToCurrent
原属性IsRedirectNewWindowToCurrentWindow
太长了,改为IsNewWindowToCurrent
Private Sub Form_Load()
WebView21.IsNewWindowToCurrent = True
End Sub
版本 1.0.29 - 2024年12月17日
新增功能:
1. querySelector
方法支持
- 在
WebView21
控件中实现了querySelector
方法的支持,用于选择和操作页面中的 DOM 元素。此方法支持 CSS 选择器,能够精确定位单个元素,并对其进行修改。 - 实现了对网页中多种类型 DOM 元素的操作,包括:
- 获取文本内容 (
Text
方法) - 获取和设置表单元素的值 (
Value
方法) - 获取和设置元素的内部 HTML (
Html
方法) - 获取和设置 DOM 元素属性 (
Attr
方法) - 添加和移除 CSS 类 (
ClassAdd
和ClassRemove
方法) - 获取和设置 CSS 样式 (
Css
方法)
- 获取文本内容 (
功能细节:
Text
方法:支持获取和设置 DOM 元素的文本内容。例如,用户可以获取span
标签的文本,也可以通过此方法修改该标签的文本内容。Value
方法:支持获取和设置表单元素的值,如<input>
标签的值。此方法可以用来修改文本框的内容,或获取输入框当前的内容。Html
方法:支持获取和设置 DOM 元素的 HTML 内容。通过此方法,开发者可以修改元素的内部结构,包括文本、HTML 标签等。Attr
方法:支持获取和设置 DOM 元素的属性值。例如,修改或读取data-*
自定义属性。ClassAdd
和ClassRemove
方法:提供了操作元素class
属性的功能,开发者可以动态地为元素添加或移除 CSS 类名,实现样式的灵活变化。Css
方法:支持获取和设置 DOM 元素的样式属性。此方法允许开发者动态修改元素的外观,比如改变颜色、显示状态等。
测试用例:
在 get_text_Click
方法中,编写了以下常见的 DOM 操作测试用例,验证了 querySelector
方法与各个成员函数的配合使用:
- 获取并设置文本内容:通过
Text
方法获取和设置网页元素的文本。 - 获取和设置输入框的值:通过
Value
方法来获取或设置<input>
元素的值。 - 获取和修改 HTML 内容:使用
Html
方法修改页面元素的 HTML。 - 修改元素的属性值:通过
Attr
方法来获取或设置属性,例如data-*
属性。 - 动态操作 CSS 类:通过
ClassAdd
和ClassRemove
方法来动态添加或移除类名。 - 操作 CSS 样式:使用
Css
方法获取和设置元素的样式属性。
已知问题:
- 由于
querySelector
只返回页面中的第一个匹配元素,若需要操作多个元素,需使用querySelectorAll
方法。 - 在某些情况下,操作异步加载的页面时,DOM 元素可能未及时加载完成,可能需要添加等待机制。
改进计划:
- 将在下一个版本中增加
querySelectorAll
方法的支持,方便批量操作多个匹配元素。 - 增强对动态内容加载的处理,确保在页面加载完成后再进行 DOM 操作。
2. 新增 IsRedirect...
属性:
该属性IsRedirectNewWindowToCurrentWindow
允许把网页中产生的所有新窗口弹出行为重定向到当前页面,确保网页一直在当前窗口控制中
(v1.0.30中改名为IsNewWindowToCurrent
)
Private Sub Form_Load()
WebView21.IsRedirectNewWindowToCurrentWindow = True
End Sub
修正功能:
3. WebView21_Ready
事件修正:
之前版本没有办法在窗体和控件初始化后自动打开指定网站, 修正了这个事件之后就可以了
Private Sub WebView21_Ready()
WebView21.Navigate "http://doc.vb6.pro"
End Sub
以上是基于 get_text_Click
方法中使用的 querySelector
和其相关成员函数的开发日志。如果你需要更详细的日志或进一步的版本记录,请随时告诉我!
版本 1.0.2 - 2024年12月06日
- 修复 多个事件没有触发的问题
- 新增 Re