diff options
author | Ricardo Wurmus <rekado@elephly.net> | 2016-10-25 23:00:35 -0700 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2016-10-25 23:07:13 -0700 |
commit | efa269d14685042912cfed96b617d4824a78a1cb (patch) | |
tree | 79573470b549dc95251f9e0ad6408e70910d2038 /lisp/xwidget.el | |
parent | 74576447b969adc430144d9a3ce57b590f2a2dcc (diff) | |
download | emacs-efa269d14685042912cfed96b617d4824a78a1cb.tar.gz |
xwidget: Add function to find element by CSS selector
* lisp/xwidget.el (xwidget-webkit-show-element): New procedure.
Diffstat (limited to 'lisp/xwidget.el')
-rw-r--r-- | lisp/xwidget.el | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/lisp/xwidget.el b/lisp/xwidget.el index e54d1f80c72..d7ef44d389f 100644 --- a/lisp/xwidget.el +++ b/lisp/xwidget.el @@ -334,6 +334,23 @@ XW is the xwidget identifier, TEXT is retrieved from the webkit." ;;TODO convert linefeed to \n ) +(defun xwidget-webkit-show-element (xw element-selector) + "Make webkit xwidget XW show a named element ELEMENT-SELECTOR. +The ELEMENT-SELECTOR must be a valid CSS selector. For example, +use this to display an anchor." + (interactive (list (xwidget-webkit-current-session) + (read-string "Element selector: "))) + (xwidget-webkit-execute-script + xw + (format " +(function (query) { + var el = document.querySelector(query); + if (el !== null) { + window.scrollTo(0, el.offsetTop); + } +})('%s');" + element-selector))) + (defun xwidget-webkit-show-named-element (xw element-name) "Make webkit xwidget XW show a named element ELEMENT-NAME. For example, use this to display an anchor." |