webForumDet fria alternativet

flytta lager inom begränsat område

JavaScriptur Javascript

3 svar · 181 visningar · startad av phoyer

Medlem sedan jan. 200137 inlägg
Frågan#1

har ett script som tillåter besökaren att flytta runt olika lager på skärmen.
detta innebär även att man kan flytta lagren utanför skärmen.
skulle behöva en funktion som begränsar inom vilka x- och y-värden som man kan flytta lagren.
nåt tips ?

------------------
bista baby !!!

Medlem sedan juli 2000836 inlägg
#2

Visa den kod du har, så skall vi nog kunna kompettera den.

------------------
Eskimåer har över 40 ord för snö, men bara 3 för bottenlån med rörlig ränta.

Medlem sedan jan. 200137 inlägg
#3

<script>
drag = 0
move = 0

function init() {
window.document.onmousemove = mouseMove
window.document.onmousedown = mouseDown
window.document.onmouseup = mouseUp
window.document.ondragstart = mouseStop
}

function mouseDown() {
if (drag) {
clickleft = window.event.x - parseInt(dragObj.style.left)
clicktop = window.event.y - parseInt(dragObj.style.top)
dragObj.style.zIndex += 1
move = 1
}
}

function mouseStop() {
window.event.returnValue = false
}

function mouseMove() {
if (move) {
dragObj.style.left = window.event.x - clickleft
dragObj.style.top = window.event.y - clicktop
}
}

function mouseUp() {
move = 0
}
</script>

<div id="lager1" onMouseOver="dragObj=lager1; drag=1;" onMouseOut="drag=0" style="visibility: visible; position: absolute; left:5; top:5;"> innehåll </div>
------------------
bista baby !!!

[Redigerat av phoyer den 14 feb 2001]

Medlem sedan juli 2000836 inlägg
#4

Ser ut som om din kod bara fungerar i IE, så jag fortsätter väl med det jag oxå. Ändra nouseMove() till detta:

function mouseMove() {
if (move) {
lagerWidth=dragObj.offsetWidth
lagerHeight=dragObj.offsetHeight
if(window.event.x < document.body.clientWidth-lagerWidth && window.event.x >lagerWidth){
dragObj.style.left = window.event.x - clickleft}
if(window.event.y < document.body.clientHeight-lagerHeight && window.event.y >lagerHeight){
dragObj.style.top = window.event.y - clicktop}
}
}

så borde du inte kunna flytta dina lager utanför fönstret.

------------------
Eskimåer har över 40 ord för snö, men bara 3 för bottenlån med rörlig ränta.

131 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)