javascript 中 ondrag(?) 事件实现
解决方案 »
- 用js打印的问题求高手指点
- response.write 改变css 问题
- 关于ASP.net与css的问题
- 怎么设置DataGrid控件在点击“编辑”后出现的文本框的CSS样式??
- 11岁小学生成软件工程师 欲申报吉尼斯世界纪录。已经掌握了C++、C、JAVA等十多种编程语言。狂汗......
- SQL数据库中的datetime字段问题.
- 初学者关于Microsoft Visual Studio .NET 2003的问题?在线等待中...先谢了:)
- asp.net中,activex控件自动下载的问题
- 我的报表“字段浏览器”图标怎么灰了呢?
- 这里有没有网页美工?我快失业了!
- ::奇怪错误::有关DataGrid的按钮删除问题?
- 在asp文件里读取asp.net文件写入的cookie,中文部分是乱码。怎么转换
Here's a link that deals with that.
http://www.experts-exchange.com/Web/Web_Languages/JavaScript/Q_20111036.html
(2) you'll need to get that JavaScript into the web page.
Here's several methods to do it in .NET.
http://www.codeguru.com/net_asp/EmbeddingJava.html
var m_fMouseDown = false;
var m_fMouseMoved = false;
var m_cxOffset = 0;
var m_cyOffset = 0;
var m_prtSrc = null;
var m_prtDrag = null; function OnDocument_MouseDown()
{
var Element=event.srcElement;
if ((window.event.srcElement.className == 'Res') || ((Element.tagName=="DIV" )&& (Element.parentElement !=null) &&(Element.parentElement.offsetParent.id.indexOf("DragTable12345")!= -1)))
{
//把层的内容存入tempsave中
document.all("tempsave").value=Element.innerText;
m_fMouseDown = true;
document.all("m_fMouseDown").value=1; m_cxOffset = window.event.clientX - GetAbsoluteLeft(window.event.srcElement);
m_cyOffset = window.event.clientY - GetAbsoluteTop(window.event.srcElement); m_prtSrc = window.event.srcElement;
if(document.all("IsNodeChange").value==1)
{
m_prtDrag=document.createElement("div");
// m_prtDrag.id=m_prtSrc.id;
m_prtDrag.className=m_prtSrc.className;
m_prtDrag.innerText=m_prtSrc.innerText;
}
else
{
m_prtDrag = m_prtSrc.cloneNode(true);
} m_prtDrag.style.position = 'absolute';
m_prtDrag.style.filter = 'alpha(opacity=50)';
m_prtDrag.style.left = (window.event.x - m_cxOffset) + document.body.scrollLeft;;
m_prtDrag.style.top = (window.event.y - m_cyOffset) + document.body.scrollTop;
m_prtDrag.style.width = m_prtSrc.offsetWidth;
m_prtDrag.style.zIndex=0;
m_prtDrag.attachEvent("onmousemove",DivMouse_OnMouseMove);
document.body.insertAdjacentElement('beforeEnd', m_prtDrag); m_prtDrag.setCapture();
}
}
function DivMouse_OnMouseMove()
{
if (m_fMouseDown)
{
m_fMouseMoved = true;
m_prtDrag.style.left = window.event.clientX - m_cxOffset + document.body.scrollLeft;
m_prtDrag.style.top = window.event.clientY - m_cyOffset + document.body.scrollTop;
}
}
function GetAbsoluteLeft(elem)
{
var leftPosition = 0;
while (elem)
{
if (elem.tagName == 'BODY')
{
break;
}
leftPosition += elem.offsetLeft;
elem = elem.offsetParent;
}
return leftPosition;
}
function GetAbsoluteTop(elem)
{
var topPosition = 0; while (elem)
{
if (elem.tagName == 'BODY')
{
break;
}
topPosition += elem.offsetTop;
elem = elem.offsetParent;
}
return topPosition;
}function DivMouse_OnMouseUp()
{
var Element=event.srcElement;
if((Element.tagName=="DIV" )&& (Element.parentElement.tagName=="TD") && (Element.parentElement.offsetParent.id.indexOf("DragTable12345")!= -1))
{
if(document.all("tempsave").value !=Element.innerText)
{
Element.fireEvent("onmouseup");
}
}
if (m_fMouseDown)
{
if (m_fMouseMoved)
{
m_fMouseMoved = false;
}
m_fMouseDown = false;
document.all("m_fMouseDown").value="0";
document.all("IsNodeChange").value="0";
}
//divMouse.releaseCapture();
if(m_prtDrag !=null)
m_prtDrag.removeNode(true);
//m_prtDrag.style.filter = 'alpha(opacity=100)';
}
function bodymouseup()
{
if (m_fMouseDown)
{
if (m_fMouseMoved)
{
m_fMouseMoved = false;
}
m_fMouseDown = false;
}
m_prtDrag.removeNode(true)
}