diff --git a/qutebrowser/browser/webengine/webengineelem.py b/qutebrowser/browser/webengine/webengineelem.py index cb1e973b0..39489eb9a 100644 --- a/qutebrowser/browser/webengine/webengineelem.py +++ b/qutebrowser/browser/webengine/webengineelem.py @@ -47,7 +47,10 @@ class WebEngineElement(webelem.AbstractWebElement): return attrs[key] def __setitem__(self, key, val): - log.stub() + self._js_dict['attributes'][key] = val + js_code = javascript.assemble('webelem', 'set_attribute', self._id, + key, val) + self._tab.run_js_async(js_code) def __delitem__(self, key): log.stub() diff --git a/qutebrowser/javascript/webelem.js b/qutebrowser/javascript/webelem.js index 3e38c8adb..6a5e1425f 100644 --- a/qutebrowser/javascript/webelem.js +++ b/qutebrowser/javascript/webelem.js @@ -155,5 +155,9 @@ window._qutebrowser.webelem = (function() { return serialize_elem(elem); }; + funcs.set_attribute = function(id, name, value) { + elements[id].setAttribute(name, value); + }; + return funcs; })();