iOS通过点坐标获取js对应元素

前几天遇到问题,知道屏幕的点,想要操作对应的内容,记录下来,只是一个方法,很肤浅,深研究的话还有好多的问题需要解决

   //模拟屏幕上的某一点
    CGFloat x = mainS.width/2,y = mainS.height/2-352;

    //js获取点元素字符串
    NSString *jsn = [NSString stringWithFormat:@"document.elementFromPoint(%f, %f).tagName", x, y];

    //通过加载js获取点对应节点元素名称
    NSString * tagName = [_webView stringByEvaluatingJavaScriptFromString:jsn];

    NSLog(@"%@",tagName);

    //获取对应元素并对其进行操作的字符串
    NSString * jsee = [NSString stringWithFormat:@"var obj = document.elementFromPoint(%f, %f); alert(obj);var event = {clientX:%f,clientY:%f};obj.click(event)",x,y,x,y];

    //加载字符串实现要的效果
    [_webView stringByEvaluatingJavaScriptFromString:jsee];
时间: 2024-10-09 04:49:58

iOS通过点坐标获取js对应元素的相关文章

js及jquery获取页面和元素的宽高

js: 网页可见区域宽: document.body.clientWidth;(不含滚动条) 网页可见区域高: document.body.clientHeight;(不含滚动条) 网页可见区域宽: document.body.offsetWidth;(包括边线的宽); 网页可见区域高: document.body.offsetHeight;(包括边线的宽); 网页正文全文宽: document.body.scrollWidth; 网页正文全文高: document.body.scrollHei

jquery获取元素坐标获取鼠标坐标

获取页面某一元素的绝对X,Y坐标,可以用offset()方法: var X = $('#DivID').offset().top; var Y = $('#DivID').offset().left; 获取相对(父元素)位置: var X = $('#DivID').position().top; var Y = $('#DivID').position().left; 让Div随滚动条移动: <div id="oLayer" style="position: abso

获取JS数组中的相同元素的名称和数量

Js代码   <script> var ary =["aaa","露露","bbb","aaa","ccc","ccc","aaa","露露","haha"]; var res = []; ary.sort(); for(var i = 0;i<ary.length;) { var count = 0; for

Ajax中通过JS代码自动获取表单元素值的示例代码

我们在使用Ajax的时候,通常需要获取表单元素值,然后发送给后台的服务器端程序处理.如果表单元素不多的情况我们常常会通过GET方式来获取表单元素值,但如果表单元素非常多,此时就需要用POST方式来获取表单元素值,那么如何来获取表单元素值呢?下面给出一段JS代码即可自动获取表单元素的值了 http://www.qidian.com/BookReader/1839917,60421843.aspx http://www.qidian.com/BookReader/1839917,60422045.a

JS:二维数组排序和获取子级元素

JS:二维数组排序和获取子级元素 1. 二维数组排序 1.按数值排序 1 var arr = [[1, 2, 3], [7, 2, 3], [3, 2, 3]]; 如果我们要按每个子数组的第一列来排序要如何做呢,我们可以定义一个比较函数: 1 arr.sort(function(x, y){ 2 return x[0] – y[0]; 3 }); 这里的比较函数的作用是什么呢?其实是数组依次将数组元素复制给x,y,比如首先将arr[0]赋给x,arr[1]赋给y,然后用x[0] – y[0],根

获取html上元素的真正坐标

使用HTML元素的style.left,style.top,style.width,style.height以及width,height属性,都不能获得元素的真正位置与大小,这些属性取出来的都是原来的设置值,例如<table id="table1" width="500">,那么通过document.getElementByIdx_x("table1").width取出来的值永远都是500,而不管这个表格是否已经被撑大了:同时,通过d

jquery1.11 操作checkbox:全选、取消全选、获取选择元素、获取取消选择元素(总结)

jquery1.11.1版本完成对checkbox的操作 1. 使用属性prop设置选中状态 2.使用:checked和:not(:checked)获取选中的元素 源码: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1&quo

使用jquery获取指定li元素后面的所有兄弟元素

使用jquery获取指定li元素后面的所有兄弟元素:如果我们已经获取了一个li元素,那么如何获取此li元素后面的所有的兄弟元素,下面就通过代码实例做一下简单介绍.代码如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /&g

JS子元素oumouseover触发父元素onmouseout

JavaScript中,父元素包含子元素: 当父级设置onmouseover及onmouseout时,鼠标从父级移入子级,则触发父级的onmouseout后又触发onmouseover:从子级移入父级后再次触发父级的oumouseout后又触发onmouseover.而如果onmouseover内又应用了计时器便会存在较大的问题.下面针对此问题给出解决方案. 首先,在给出解决方案之前,必须先弄清楚几个对象及方法,分别如下: 1.事件对象 2.事件对象相关属性(只针对onmouseover及onm