如何从 JavaScript 中滚动 <webview> 标签的内容
How can I scroll content of <webview> tag from JavaScript?
- 原子壳:https://github.com/atom/atom-shell
- 版本: v0.20.2
我正在使用<webview>
标签来嵌入页面。 <webview>
标签具有shadow-root
,其中有一个标签,<object id="browser-plugin-1 ...>
。所以我尝试像这样为这个标签设置scrollTop
值。
var webView = document.getElementById('webview tag id');
var elm = webView.shadowRoot.firstChild; // elm is object tag
console.log(elm.scrollTop); // 0
elm.scrollTop = 100;
console.log(elm.scrollTop); // 0
但是什么也没发生...
是否可以从外部控制<webview>
标签滚动位置?
是的,请改为这样做:
var webView = document.getElementById('webview tag id');
webView.executeJavaScript("document.querySelector('body:first-child').scrollTop=100");
可以通过WebView.executeJavaScript(code)
函数执行任何类型的javascript,该函数将评估WebView中的代码。
要访问您的元素,您首先必须等待 WebView 加载,然后执行 javascript。
var webView = document.getElementById('webView');
webView.addEventListener('did-finish-load', scrollElement );
function scrollElement(){
var code = "var elm = document.querySelector('body:first-child'); elm.scrollTop = 100;";
webView.executeJavaScript(code);
}
注意:尚未测试此代码,可能存在语法错误。
来源(AtomShell的WebView标签文档)
相关文章:
- 在<页眉>标签
- Ckeditor-plugin:插入虚假元素add不情愿<p>标签前后
- 如何在webView,Android中从@JavascriptInterface方法调用Javascript
- iframe正在添加标签,需要删除它们
- window.onload没有'无法在Android WebView中工作
- 如何自动调整标签的高度以适应内容
- Jquery标签插件粘贴问题
- Twitter引导程序Typeahead-Id&标签
- Highcharts-如何在自定义格式化程序中获得默认的y轴标签格式化程序
- Morris.js折线图x轴标签在调整大小后消失
- JavaScript goto 标签如何使用内部循环
- 显示某个用户ID的某个标签的30张Instagram图片
- 标签客户端的设置值
- 谷歌图表显示所有标签
- 如何在图片和边缘之间居中设置标签
- Android Webview通过Javascript注入CSS
- Android在webview中加载带有javascript的html文件,得到Uncaught ReferenceEr
- 在Datatables中设置本地化后,需要更改标签文本
- Android WebView:使用脚本标签从我的资产文件夹加载外部 JavaScript 文件
- 在webview标签中访问node.js模块