• RFS_javascript的使用


    1. RFS对javascript的调用

      (1)调用javascript语句

        

      (2)调用javascript函数
        

    2. IE8不支持javascript的 getElementsByClassName方法,可通过以下的方法进行调用

    function getClassNames(classStr,tagName,framesIndex) {
        var nodes = window.document.getElementsByTagName(tagName),ret = [];
        for(i = 0; i < nodes.length; i++) {
            if(hasClass(nodes[i],classStr)){ 
                ret.push(nodes[i])
                console.log(nodes[i]);            
            } 
        }
        
        return ret;
    }
    
    function hasClass(tagStr,classStr){ 
        var arr=tagStr.className.split(/s+/ ); //这个正则表达式是因为class可以有多个,判断是否包含 
        for (var i=0;i<arr.length;i++){ 
            if (arr[i]==classStr){ 
                return true ; 
            } 
        } 
        return false ; 
    }
    
    console.log(getClassNames("test","span")[0].type);

      网上获取的代码,存在以下的问题:

      (1) 无法获取window窗口下frame表单中元素节点的属性值

      (2) 如果className中包含空格,此代码将无法找到className

    3. 运行javascript遇到的问题

      【环境】:IE8

      【问题】:程序报以下的错误:WebDriverException: Message: u'JavaScript error'

      【解决方法】:

        (1)可能是IE开启了安全模式,去掉安全模式

            

        (2) IE8及以下的版本运用了getElementsByClassName方法,具体解决方法,可参考上面。最好的方法是加上ID或者Name。

  • 相关阅读:
    使用docker-client创建NFS挂载
    递归遍历JSON树
    electron-builder中NSIS相关配置
    nodejs调试基础【转载】
    node-java模块
    NodeJs中使用jQuery?
    如何实现electron多页面间通信
    转载:【知乎Live】狼叔:如何正确的学习Node.js
    js对象替换键值名称
    Eclipse 调试 darknet 代码
  • 原文地址:https://www.cnblogs.com/zhuhaiying/p/5286503.html
Copyright © 2020-2023  润新知