
- -!keyup是键盘上的按键d起的事件,你写这个干啥,而且你这个$(this)指向的全都是$("d")这同一个元素。如果你想点击键盘按键的时候进行计算,那也得先看一下按键编码,一般都是按enter键的时候计算,如果你要用的话就要麻烦一点,先用这个函数看看enter的按键编码是多少:
documentonkeyup = function (e) {
consolelog(ekeyCode);
}
得出enter的按键编码是13;
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<input type="text">+
<input type="text">+
<input type="text">/3+
<input type="text">
<button>=</button>
<input type="text">
<script type="text/javascript">
//通过标签名获取按钮,button就是一个按钮,在页面上显示的样子就是一个按钮,不是键盘上的按键。
var res = documentgetElementsByClassName("result")[0];
//按键盘上的按钮d起时,触发事件,{}中写的就是触发的内容。
documentonkeyup = function(e) {
//e就是event,按下按钮的时候会触发事件,这个事件有很多的属性,比如type为keyup,key为enter等等等等;判断这个按下的键的编码为13,也就是enter的编码的时候,执行计算。
if (e && ekeyCode == 13) {
//documentgetElementsByClassName("a")是通过类名获取元素;[0]是因为通过类获取到的是一个集合或者说是数组,尽管有这个类名的只有一个元素,但是一样要加上[0],这写法就是数组的写法;value是获取这个文本框的值,-0是因为value获取到的是字符串,-0是转换成数字。
var a = documentgetElementsByClassName("a")[0]value - 0;
var b = documentgetElementsByClassName("b")[0]value - 0;
var c = documentgetElementsByClassName("c")[0]value - 0;
var d = documentgetElementsByClassName("d")[0]value - 0;
var result = (a + b + c) / 3 + d;
resvalue = result;
} }
</script>
</body>
</html>
直接用鼠标点击在页面上的按钮的写法就是:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<input type="text">+
<input type="text">+
<input type="text">/3+
<input type="text">
<button>=</button>
<input type="text">
<script type="text/javascript">
//通过标签名获取按钮,button就是一个按钮,在页面上显示的样子就是一个按钮,不是键盘上的按键。
var btn = documentgetElementsByTagName("button")[0];
var res = documentgetElementsByClassName("result")[0];
//点击按钮,触发事件,{}中写的就是触发的内容。
btnonclick = function() {
//documentgetElementsByClassName("a")是通过类名获取元素;[0]是因为通过类获取到的是一个集合或者说是数组,尽管有这个类名的只有一个元素,但是一样要加上[0],这写法就是数组的写法;value是获取这个文本框的值,-0是因为value获取到的是字符串,-0是转换成数字。
var a = documentgetElementsByClassName("a")[0]value - 0;
var b = documentgetElementsByClassName("b")[0]value - 0;
var c = documentgetElementsByClassName("c")[0]value - 0;
var d = documentgetElementsByClassName("d")[0]value - 0;
var result = (a + b + c) / 3 + d;
resvalue = result;
}
</script>
</body>
</html>
documentbodyonclick=function(){
var obj=documentelementFromPoint(eventclientX,eventclientY);
alert(objtagName)
}
IE chrome 兼容,火狐要兼容,我目前所知的办法非常复杂,也没有仔细研究过。
你可以去搜 索下 elementFromPoint这个火狐兼容的办法。
吸使用以下几种方式获取:
1PageX/PageX:鼠标在页面上的位置,从页面左上角开始,即是以页面为参考点,不随滑动条移动而变化
2clientX/clientY:鼠标在页面上可视区域的位置,从浏览器可视区域左上角开始,即是以浏览器滑动条此刻的滑动到的位置为参考点,随滑动条移动 而变化
可是悲剧的是,PageX只有FF特有,IE这个悲剧没有啊T_T,所以大牛们想出了一个办法
PageY=clientY+scrollTop-clientTop;(只讨论Y轴,X轴同理,下同)
3screenX/screenY:鼠标在屏幕上的位置,从屏幕左上角开始(w3c标准)
4offsetX/offsetY:IE特有,鼠标相比较于触发事件的元素的位置,以元素盒子模型的内容区域的左上角为参考点,如果有boder,可能出现负值
5
layerX/layerY:FF特有,鼠标相比较于当前坐标系的位置,即如果触发元素没有设置绝对定位或相对定位,以页面为参考点,如果有,将改变参考坐标系,从触发元素盒子模型的border区域的左上角为参考点也就是当触发元素设置了相对或者绝对定位后,layerX和offsetX就幸福地生活在一起^-^,几乎相等,唯一不同就是一个从border为参考点,一个以内容为参考点
chrome和safari一条龙通杀!完全支持所有属性其中(offsetX和layerX都是以border为参考点)
下面这个是获取相对于屏幕的坐标
documentonmousemove=function(e){e=e e:windowevent;documentwriteln("X:"+escreenX+"Y:"+escreenY);}
把这句改成下面那样documentalld1stylecursor="move"; documentgetElementById('d1')stylecursor='move';
代码如下:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>获取鼠标在Canvas中的坐标位置</title>
<style>
#canvas{
border:1px solid #ccc;
width:300px;
height:300px;
overflow:hidden;
}
</style>
<script>
function get_canvas(ev,obj){
m_clientX = evclientX-objoffsetLeft;
m_clientY = evclientY-objoffsetTop;
documentgetElementById("tips")innerHTML = "当前坐标:X:"+ m_clientX + " ,Y:" +m_clientY;
}
</script>
</head>
<body>
<div id="tips"></div>
<div id="canvas" onmousemove="get_canvas(event,this)"></div>
</body>
</html>
兼容IE8+
用 javascript 获取当前页面上鼠标(光标)位置在许多情况下都会用到,比如拖放,悬停提示(tooltip) 等等。当然,这里我们依然要面对浏览器的兼容问题,在不同的浏览器下,对这些相关的属性处理方式也不同。
参考资料
首页 → 网络编程 → JavaScript → javascript技巧 → js获取鼠标位置实例详解脚本之家[引用时间2018-1-18]
以上就是关于js怎么获取文本框的值然后运算全部的内容,包括:js怎么获取文本框的值然后运算、js中怎样获取鼠标当前点击的标签的值、js怎么获得鼠标当前坐标等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)