• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python javascript.assemble函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中qutebrowser.utils.javascript.assemble函数的典型用法代码示例。如果您正苦于以下问题:Python assemble函数的具体用法?Python assemble怎么用?Python assemble使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了assemble函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: selection

 def selection(self, callback):
     # Not using selectedText() as WORKAROUND for
     # https://bugreports.qt.io/browse/QTBUG-53134
     # Even on Qt 5.10 selectedText() seems to work poorly, see
     # https://github.com/qutebrowser/qutebrowser/issues/3523
     self._tab.run_js_async(javascript.assemble('caret', 'getSelection'),
                            callback)
开发者ID:Harrison97,项目名称:qutebrowser,代码行数:7,代码来源:webenginetab.py


示例2: _update_pos

    def _update_pos(self):
        """Update the scroll position attributes when it changed."""
        def update_pos_cb(jsret):
            """Callback after getting scroll position via JS."""
            if jsret is None:
                # This can happen when the callback would get called after
                # shutting down a tab
                return
            log.webview.vdebug(jsret)
            assert isinstance(jsret, dict), jsret
            self._pos_px = QPoint(jsret['px']['x'], jsret['px']['y'])

            dx = jsret['scroll']['width'] - jsret['inner']['width']
            if dx == 0:
                perc_x = 0
            else:
                perc_x = min(100, round(100 / dx * jsret['px']['x']))

            dy = jsret['scroll']['height'] - jsret['inner']['height']
            if dy == 0:
                perc_y = 0
            else:
                perc_y = min(100, round(100 / dy * jsret['px']['y']))

            self._at_bottom = dy >= jsret['px']['y']
            self._pos_perc = perc_x, perc_y

            self.perc_changed.emit(*self._pos_perc)

        js_code = javascript.assemble('scroll', 'pos')
        self._tab.run_js_async(js_code, update_pos_cb)
开发者ID:shaggytwodope,项目名称:qutebrowser,代码行数:31,代码来源:webenginetab.py


示例3: _js_call

 def _js_call(self, name: str, *args: webelem.JsValueType,
              callback: typing.Callable[[typing.Any], None] = None) -> None:
     """Wrapper to run stuff from webelem.js."""
     if self._tab.is_deleted():
         raise webelem.OrphanedError("Tab containing element vanished")
     js_code = javascript.assemble('webelem', name, self._id, *args)
     self._tab.run_js_async(js_code, callback=callback)
开发者ID:fiete201,项目名称:qutebrowser,代码行数:7,代码来源:webengineelem.py


示例4: find_at_pos

 def find_at_pos(self, pos, callback):
     assert pos.x() >= 0
     assert pos.y() >= 0
     js_code = javascript.assemble('webelem', 'element_at_pos',
                                   pos.x(), pos.y())
     js_cb = functools.partial(self._js_cb_single, callback)
     self._tab.run_js_async(js_code, js_cb)
开发者ID:shaggytwodope,项目名称:qutebrowser,代码行数:7,代码来源:webenginetab.py


示例5: _init_stylesheet

def _init_stylesheet(profile):
    """Initialize custom stylesheets.

    Partially inspired by QupZilla:
    https://github.com/QupZilla/qupzilla/blob/v2.0/src/lib/app/mainapplication.cpp#L1063-L1101
    """
    old_script = profile.scripts().findScript('_qute_stylesheet')
    if not old_script.isNull():
        profile.scripts().remove(old_script)

    css = shared.get_user_stylesheet()
    source = '\n'.join([
        '"use strict";',
        'window._qutebrowser = window._qutebrowser || {};',
        utils.read_file('javascript/stylesheet.js'),
        javascript.assemble('stylesheet', 'set_css', css),
    ])

    script = QWebEngineScript()
    script.setName('_qute_stylesheet')
    script.setInjectionPoint(QWebEngineScript.DocumentCreation)
    script.setWorldId(QWebEngineScript.ApplicationWorld)
    script.setRunsOnSubFrames(True)
    script.setSourceCode(source)
    profile.scripts().insert(script)
开发者ID:Harrison97,项目名称:qutebrowser,代码行数:25,代码来源:webenginesettings.py


示例6: set_text

    def set_text(self, text, *, use_js=False):
        """Set the given plain text.

        Args:
            use_js: Whether to use javascript if the element isn't
                    content-editable.
        """
        # FIXME:qtwebengine what to do about use_js with WebEngine?
        js_code = javascript.assemble('webelem', 'set_text', self._id, text)
        self._tab.run_js_async(js_code)
开发者ID:julianuu,项目名称:qutebrowser,代码行数:10,代码来源:webengineelem.py


示例7: _update_stylesheet

def _update_stylesheet():
    """Update the custom stylesheet in existing tabs."""
    css = shared.get_user_stylesheet()
    code = javascript.assemble('stylesheet', 'set_css', css)
    for win_id, window in objreg.window_registry.items():
        # We could be in the middle of destroying a window here
        if sip.isdeleted(window):
            continue
        tab_registry = objreg.get('tab-registry', scope='window',
                                  window=win_id)
        for tab in tab_registry.values():
            tab.run_js_async(code)
开发者ID:Harrison97,项目名称:qutebrowser,代码行数:12,代码来源:webenginesettings.py


示例8: _on_mode_entered

    def _on_mode_entered(self, mode):
        if mode != usertypes.KeyMode.caret:
            return

        if self._tab.search.search_displayed:
            # We are currently in search mode.
            # convert the search to a blue selection so we can operate on it
            # https://bugreports.qt.io/browse/QTBUG-60673
            self._tab.search.clear()

        self._tab.run_js_async(
            javascript.assemble('caret', 'setPlatform', sys.platform))
        self._js_call('setInitialCursor')
开发者ID:Harrison97,项目名称:qutebrowser,代码行数:13,代码来源:webenginetab.py


示例9: _update_pos

    def _update_pos(self):
        """Update the scroll position attributes when it changed."""
        def update_pos_cb(jsret):
            """Callback after getting scroll position via JS."""
            if jsret is None:
                # This can happen when the callback would get called after
                # shutting down a tab
                return
            assert isinstance(jsret, dict), jsret
            self._pos_perc = (jsret['perc']['x'], jsret['perc']['y'])
            self._pos_px = QPoint(jsret['px']['x'], jsret['px']['y'])
            self.perc_changed.emit(*self._pos_perc)

        js_code = javascript.assemble('scroll', 'pos')
        self._tab.run_js_async(js_code, update_pos_cb)
开发者ID:julianuu,项目名称:qutebrowser,代码行数:15,代码来源:webenginetab.py


示例10: follow_selected

    def follow_selected(self, *, tab=False):
        if self._tab.search.search_displayed:
            # We are currently in search mode.
            # let's click the link via a fake-click
            # https://bugreports.qt.io/browse/QTBUG-60673
            self._tab.search.clear()

            log.webview.debug("Clicking a searched link via fake key press.")
            # send a fake enter, clicking the orange selection box
            if tab:
                self._tab.key_press(Qt.Key_Enter, modifier=Qt.ControlModifier)
            else:
                self._tab.key_press(Qt.Key_Enter)

        else:
            # click an existing blue selection
            js_code = javascript.assemble('webelem', 'find_selected_link')
            self._tab.run_js_async(js_code, lambda jsret:
                                   self._follow_selected_cb(jsret, tab))
开发者ID:Harrison97,项目名称:qutebrowser,代码行数:19,代码来源:webenginetab.py


示例11: test_assemble

def test_assemble(base, expected_base):
    expected = '"use strict";\n{}.func(23);'.format(expected_base)
    assert javascript.assemble(base, 'func', 23) == expected
开发者ID:meles5,项目名称:qutebrowser,代码行数:3,代码来源:test_javascript.py


示例12: _js_call

 def _js_call(self, name, *args, callback=None):
     """Wrapper to run stuff from webelem.js."""
     js_code = javascript.assemble('webelem', name, self._id, *args)
     self._tab.run_js_async(js_code, callback=callback)
开发者ID:nanjekyejoannah,项目名称:qutebrowser,代码行数:4,代码来源:webengineelem.py


示例13: find_all_elements

 def find_all_elements(self, selector, callback, *, only_visible=False):
     js_code = javascript.assemble('webelem', 'find_all', selector)
     js_cb = functools.partial(self._find_all_elements_js_cb, callback)
     self.run_js_async(js_code, js_cb)
开发者ID:nicoddemus,项目名称:qutebrowser,代码行数:4,代码来源:webenginetab.py


示例14: find_focused

 def find_focused(self, callback):
     js_code = javascript.assemble('webelem', 'focus_element')
     js_cb = functools.partial(self._js_cb_single, callback)
     self._tab.run_js_async(js_code, js_cb)
开发者ID:shaggytwodope,项目名称:qutebrowser,代码行数:4,代码来源:webenginetab.py


示例15: insert_text

 def insert_text(self, text):
     if not self.is_editable(strict=True):
         raise webelem.Error("Element is not editable!")
     log.webelem.debug("Inserting text into element {!r}".format(self))
     js_code = javascript.assemble('webelem', 'insert_text', self._id, text)
     self._tab.run_js_async(js_code)
开发者ID:NoctuaNivalis,项目名称:qutebrowser,代码行数:6,代码来源:webengineelem.py


示例16: __setitem__

 def __setitem__(self, key, val):
     self._js_dict['attributes'][key] = val
     js_code = javascript.assemble('webelem', 'set_attribute', self._id,
         key, val)
     self._tab.run_js_async(js_code)
开发者ID:NoctuaNivalis,项目名称:qutebrowser,代码行数:5,代码来源:webengineelem.py


示例17: to_point

 def to_point(self, point):
     js_code = javascript.assemble('window', 'scroll', point.x(), point.y())
     self._tab.run_js_async(js_code)
开发者ID:shaggytwodope,项目名称:qutebrowser,代码行数:3,代码来源:webenginetab.py


示例18: to_perc

 def to_perc(self, x=None, y=None):
     js_code = javascript.assemble('scroll', 'to_perc', x, y)
     self._tab.run_js_async(js_code)
开发者ID:shaggytwodope,项目名称:qutebrowser,代码行数:3,代码来源:webenginetab.py


示例19: set_css

 def set_css(self, css):
     """Set document style to `css` via stylesheet.js."""
     code = javascript.assemble('stylesheet', 'set_css', css)
     self.js.run(code, None)
开发者ID:mehak,项目名称:qutebrowser,代码行数:4,代码来源:test_stylesheet.py


示例20: _js_call

 def _js_call(self, command):
     self._tab.run_js_async(
         javascript.assemble('caret', command))
开发者ID:Harrison97,项目名称:qutebrowser,代码行数:3,代码来源:webenginetab.py



注:本文中的qutebrowser.utils.javascript.assemble函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python jinja.render函数代码示例发布时间:2022-05-26
下一篇:
Python error.handle_fatal_exc函数代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap