大佬教程收集整理的这篇文章主要介绍了javascript – 将View的触摸位置转换为WebView的HTML屏幕位置,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
基本流程:@H_874_3@
> WebView的onDrag事件捕获ACTION_DROP事件.
>事件的x,y位置传递给Javascript函数
> Javascript函数根据点找到元素并更新值@H_874_3@
在我的活动中:@H_874_3@
private class OnWebViewDragListener implements OnDragListener { public Boolean onDrag(View v,DragEvent event) { switch (event.getAction()) { case DragEvent.ACTION_DROP: String dropText = event.getCliPDAta().getItemAt(0).getText().toString(); mJavaScript._dropText(mWebView,dropText,event.getX(),event.getY()); return true; default: break; } return false; } }
Javascript包装器:@H_874_3@
public void _dropText(WebView wv,String text,float x,float y) { wv.loadUrl("javascript:dropText('" + text + "'," + x + "," + y + ")"); }
Javascript功能:@H_874_3@
<script type="text/javascript"> function dropText(text,x,y) { var elem = document.elementFromPoint(x,y); if (elem.tagName == "INPUT") { elem.value = text; } } </script>@H_674_20@
DE = DragEvent
WV = WebView@H_874_3@
x = DE.getX()*(window.innerWidth / WV.getWidth());
y = DE.getY()*(window.innerHeight / WV.getHeight());@H_874_3@
我的代码现在看起来如何:@H_874_3@
在活动中:@H_874_3@
private class OnWebViewDragListener implements OnDragListener { public Boolean onDrag(View v," + y + "," + wv.getHeight() + "," + wv.getWidth() + ")"); }
Javascript功能:@H_874_3@
<script type="text/javascript"> function dropText(text,y,height,width) { x *= (window.innerWidth / width); y *= (window.innerHeight / height); var elem = document.elementFromPoint(x,y); if (elem.tagName == "INPUT") { elem.value = text; } } </script>@H_674_20@ @H_674_20@
以上是大佬教程为你收集整理的javascript – 将View的触摸位置转换为WebView的HTML屏幕位置全部内容,希望文章能够帮你解决javascript – 将View的触摸位置转换为WebView的HTML屏幕位置所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。