V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
kingmo888
V2EX  ›  问与答

求教 QWebEngineView 加载 js, url 跳转后 js 不生效的问题。

  •  
  •   kingmo888 · 2019-08-12 00:46:22 +08:00 · 1741 次点击
    这是一个创建于 1942 天前的主题,其中的信息可能已经有所发展或是发生改变。

    rt,类似一个商品列表页遍历功能,每个页面都会执行一样的 js。

    但大多数时候,只有在第一次执行。

    重构了 QWebEngineView,当有链接是新窗口打开的形式时,将会以 tab 形式打开新 url。此时,就会自动生效。但是,对于列表分页形式,因为不会打开新窗口,所以有时候 js 会生效(如果当次测试生效,在测试的时候人工点多少次分页都会生效),有时候无效。

    之前的时候,将插入 js 绑定到了 loadFinished 上,但是效果不佳。于是绑定了到 urlChanged, 执行方法是 '''

        with open(path, 'r', encoding='utf-8') as f:
    
            code = f.read()
    
            self.script.setSourceCode(code)
            
        self.profile.scripts().insert(self.script)
    

    '''

    好奇怪啊。相同的代码,在多次测试的时候就会出现不同的结果。完全无法理解。

    求解,万分感谢!

    1 条回复    2019-08-12 09:43:43 +08:00
    kingmo888
        1
    kingmo888  
    OP
       2019-08-12 09:43:43 +08:00
    研究了半天,好奇怪。。。各种有时候启动有时候不启动。
    感觉跟视图是否完全加载也有关系,因为尝试在 loadFinished.connect(xxx)中打印日志,发现有时候不会打印。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5869 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 02:23 · PVG 10:23 · LAX 18:23 · JFK 21:23
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.