Scripting in Drag

D

DanWeaver

Can anyone help me solve this? I am trying to modify the below script
which allows elements of class="drag" to be dragged around the screen
by a user. I need to get (either as a hidden text box or a variable to
be used in other functions (including vbscript
functions) the coordinates of a dragged object after the drag
operation ie to know exactly where each draggable element is at all
times.

Any help massively appreciated. Dan.

<style type="text/css">
.drag{
position:relative;
cursor:hand;
z-index: 100;
}
</style>
<script type="text/javascript">
/***********************************************
* Drag and Drop Script: © Dynamic Drive (http://
www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit http://www.dynamicdrive.com/ for this script and 100s
more.
***********************************************/
var dragobject={
z: 0, x: 0, y: 0, offsetx : null, offsety : null, targetobj :
null, dragapproved : 0,
initialize:function(){
document.onmousedown=this.drag
document.onmouseup=function(){this.dragapproved=0}
},
drag:function(e){
var evtobj=window.event? window.event : e
this.targetobj=window.event? event.srcElement : e.target
if (this.targetobj.className=="drag"){
this.dragapproved=1
if (isNaN(parseInt(this.targetobj.style.left)))
{this.targetobj.style.left=0}
if (isNaN(parseInt(this.targetobj.style.top)))
{this.targetobj.style.top=0}
this.offsetx=parseInt(this.targetobj.style.left)
this.offsety=parseInt(this.targetobj.style.top)
this.x=evtobj.clientX
this.y=evtobj.clientY

if (evtobj.preventDefault)
evtobj.preventDefault()
document.onmousemove=dragobject.moveit
}
},
moveit:function(e){
var evtobj=window.event? window.event : e
if (this.dragapproved==1){
this.targetobj.style.left=this.offsetx+evtobj.clientX-this.x
+"px"
this.targetobj.style.top=this.offsety+evtobj.clientY-this.y
+"px"
return false
}
}
}

dragobject.initialize()
</script>
 
A

Andrew Thompson

Can anyone help me solve this?

Given this basically comes down to..

<script type="text/javascript">

...javascript (which is not the topic of discussion
on this forum, I have to say "you are in the
wrong place".

Perhaps the other post to..
microsoft.public.scripting.jscript
...will yield results, though I doubt
the ability of MS (or anyone answering
on the MS Forums) to provide a cross-
browser script, so I would recommend
the *best* group for JavaScript is..
comp.lang.javascript
...but be warned they do not take kindly to..
* Drag and Drop Script: © Dynamic Drive

...scripts from 'Dynamic Drive', since
they are generally crap.

Andrew T.
 
C

Christopher Benson-Manica

[OT advice follows.]
Can anyone help me solve this? I am trying to modify the below script
which allows elements of class="drag" to be dragged around the screen
by a user.
* This notice MUST stay intact for legal use

Rather than tying yourself to script that a) is sub-optimal, and b)
carries advertising for other crappy script in its license, I suggest
purchasing the O'Reilly JavaScript book and beginning from the
drag-and-drop example in the book.
 
D

DanWeaver

[OT advice follows.]
Can anyone help me solve this? I am trying to modify the below script
which allows elements of class="drag" to be dragged around the screen
by a user.
* This notice MUST stay intact for legal use

Rather than tying yourself to script that a) is sub-optimal, and b)
carries advertising for other crappy script in its license, I suggest
purchasing the O'Reilly JavaScript book and beginning from the
drag-and-drop example in the book.


Hi Andrew and Chris,

Thanks for your replies- sorry about java/ javascript confusion- I
supposed that jave people might well be experts in javescript too- but
I am pretty inexperienced in all of this and pointers to books and
"the way things work" on techie newsgroups are much appreciated,
thanks for your time.

Dan
ps- the javascript group have not reponded- but at least I have a
working hypoth for why now! D
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,995
Messages
2,570,230
Members
46,818
Latest member
Brigette36

Latest Threads

Top