51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2205|回复: 9
打印 上一主题 下一主题

[原创] 请教关于DOM的一个实现方法?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2011-3-1 09:14:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如何用dom来实现:只传入一个文字,遍历到页面上包含该文字的所有html对象?不用QTP自带的方法。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    慵懒
    2019-4-10 17:57
  • 签到天数: 35 天

    连续签到: 1 天

    [LV.5]测试团长

    2#
    发表于 2011-3-1 14:09:00 | 只看该作者
    本帖最后由 shingo0109 于 2011-3-1 14:11 编辑

    根据百度首页简单写了个,不知是否符合LZ要求, 多提意见~~
    inputstring="百"
    Set Doc = Browser("CreationTime:=0").Page(":=").Object
    For Each Element In Doc.all
        InnerText = Element.innerText
        If Instr(1, InnerText, inputstring) >0 Then
           Print "innertext=" &InnerText & vbcrlf
        End If
    Next
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
     楼主| 发表于 2011-3-1 17:39:12 | 只看该作者
    多谢~~!这就是我要的但是all这个集合似乎在firefox下不能用,我后来查了用document.getElementsByTagName('*')也行,还有一个问题就是innerText属性在firefox下不能用,在IE是可以的,firefox下可以用textContent属性,但是这个属性在IE下又有问题。。。。有什么方法可以实现两个浏览器通用吗?我是想用selenium,想写一些基础的方法可以支持IE和FF
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2019-4-10 17:57
  • 签到天数: 35 天

    连续签到: 1 天

    [LV.5]测试团长

    4#
    发表于 2011-3-1 22:26:35 | 只看该作者
    回复 3# wugecat


    可不可以通过判断浏览器的类型来添加if else条件, 如果浏览器是IE, 那就使用innertext属性, 如果是firefox,那就使用textcontent

    至于如何判断浏览器类型, 我还没试过, 要不LZ试试
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2019-4-10 17:57
  • 签到天数: 35 天

    连续签到: 1 天

    [LV.5]测试团长

    5#
    发表于 2011-3-2 11:32:02 | 只看该作者
    试了下, 貌似可以通过GetROProperty("application version")来判断浏览器类型
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
    发表于 2011-3-2 12:49:06 | 只看该作者
    浏览器的类型获取方法有很多,我不明白的是,这个浏览器应该是你自己通过QTP启动的,这时候还需要判断吗?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2019-4-10 17:57
  • 签到天数: 35 天

    连续签到: 1 天

    [LV.5]测试团长

    7#
    发表于 2011-3-2 13:04:18 | 只看该作者
    回复 6# xiaoyaoke


    貌似LZ是想用selenium来实现浏览器通用, 我上面的GetROProperty应该不能用了, 那个是QTP里的方法, 用selenium工具怎么判断浏览器还没用过, 还望LZ自己试试了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
    发表于 2011-3-2 13:53:21 | 只看该作者
    用selenium也是在初始化的时候自己启动浏览器啊,这个时候是自己确定的启动的是IE还是Firefox之类的,只在不行就selenium里面去get http header中的User-Agent了,而且记得在浏览器里面应该也是有方法获取浏览器类型的,通过JS貌似可以获取

    办法很多的,自己想想
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2019-4-10 17:57
  • 签到天数: 35 天

    连续签到: 1 天

    [LV.5]测试团长

    9#
    发表于 2011-3-2 14:06:44 | 只看该作者
    回复 8# xiaoyaoke


    恩, 是自己启动浏览器的啊, 但自己有时会启动IE, 有时会启动firefox, 如果代码里不加判断, 只写一种的话, 到时启动另外一个浏览器时, 属性不就无法识别了么。

    至于怎么取浏览器, 还请LZ自己试试了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
     楼主| 发表于 2011-3-2 14:08:35 | 只看该作者
    呵呵~可以这样判断!
    if(document.all){
    alert("IE")
    }else
    {
    alert("FF")
    }
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-23 10:44 , Processed in 0.074932 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表