简单的javascript拖拽实例
简单的javascript拖拽实例----> 本人原创(244796562@qq.com)
<html>
<head>
<title>拖拽测试</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<div id="box" style="position:absolute;top:100px;left:200px;width:200px;height:200px;background-color:#C0C0C0;border:solid 1px #555555">
<div id="bar" title="可移动" style="cursor:pointer;background-color:#0099FF;border-bottom:solid 1px #555555" mce_style="cursor:pointer;background-color:#0099FF;border-bottom:solid 1px #555555">
<b>title:拖动条</b>
</div>
content:内容区
</div>
<mce:script type="text/javascript"><!--
function stopBubble(e) {//禁止冒泡事件
if (e && e.stopPropagation) {
e.stopPropagation();
} else {
window.event.cancelBubble = true;
}
}
function stopDefault(e) {//禁止默认行为
if (e && e.preventDefault) {
e.preventDefault();
} else {
window.event.returnValue = false;
}
return false;
}
function drag(box, bar) {//被拖拽的元素必须有top(px)和left(px)属性
var lastMouseX, lastMouseY;
if (!box.style.left || !box.style.top) {//如果真的没有top(px)和left(px)属性,加默认值
box.style.left = "10px";
box.style.top = "10px";
}
function getMousePos(e) {//获取鼠标坐标
e = e || window.event;
return {x: e.clientX, y: e.clientY};
}
bar.onmousedown = function(ed) {//初始化拖拽事件
stopBubble(ed);
stopDefault(ed);
var lastMousePos = getMousePos(ed);
lastMouseX = lastMousePos.x;
lastMouseY = lastMousePos.y;
window.top.document.onmousemove = function(em) {//注册移动事件
stopBubble(em);
stopDefault(em);
var currentMousePos = getMousePos(em);//当前鼠标位置
var currentMouseX = currentMousePos.x;
var currentMouseY = currentMousePos.y;
var boxLeft = parseInt(box.style.left);//拖动层的位置
var boxTop = parseInt(box.style.top);
box.style.left = boxLeft + currentMouseX - lastMouseX +
相关文档:
1.文本框
1.1 <input type="text" name="test" id="test">
通过var t=document.getElementById("test").value把值赋给变量t,
1.2 当然也可以反过来把已知的变量值赋给文本框,例如:
var m = "5";
document.getElementById("test").value= m;
2.下拉列表框
2.1 <select name="sel" id="sel" onchange ......
方法一、
NPN_GetURL(m_Instance, "javascript:test()", NULL);
方法二、
NPVariant rval;
NPN_InvokeDefault(m_Npp, objectDisconnect ,NULL, 0,&rval);
NPN_ReleaseVariantValue(&rval);
以下是javascript
<script type="text/javascript">
&nb ......
1. oncontextmenu="window.event.returnValue=false" 将彻底屏蔽鼠标右键
<table border oncontextmenu=return(false)><td>no</table> 可用于Table
2. <body onselectstart="return false"> 取消选取、防止复制
3. onpaste="return false" 不准粘贴
4. oncopy="return false;" oncut="return f ......
1. 总是使用 ‘var’
在JavaScript
中,变量不是全局范围的就是函数范围的,使用”var”关键词将是保持变量简洁明了的关键。当声明一个或者是全局或者是函数级(function-level)的变量,需总是前置”var”关键词,下面的例子将强调不这样做潜在的问题。
不使用 Var 造成的问题
var i=0; ......