ช่วยหน่อยครับ javascript

พอดีทีมงานคนนึงที่จะทำส่วนนี้ ไม่ว่างมาทำ

คนที่ไม่ถนัดเลยต้องมาทำแทน


คือเห็นเมนู V คาเฟ่ ข้างบนสุดมั้ยครับ (Home | V คาเฟ่ | ข่าววิชาการ | ข่าวบริการ | Update )

เวลาเลื่อนเมาส์ไปที่ V คาเฟ่ เราอยากให้เมนูห้องย่อยๆของ V คาเฟ่ โผล่ออกมา (layer : hidden ==> layer : visible ทำนองนี้) จะได้เลือกห้องจากเมนูนี้ทันที


ตรงนี้จะช่วยให้ง่ายขึ้นเวลาอยู่ในส่วนอื่นๆที่ไม่ใช่คาเฟ่ (ก็จะไม่มีเมนูห้องย่อยๆด้านซ้ายของคาเฟ่) จะกลับมาห้องไหนห้องหนึ่งได้ง่ายๆ


มีใครช่วยทำ javascript ได้มั้ยครับ ที่ใช้ได้ทั้ง Netscape & IE


ทีมงานขอบคุณหลายๆ

22 ส.ค. 2544 22:04
7 ความเห็น
4636 อ่าน


ความคิดเห็นที่ 1 Joe:D (Guest)

ลองทำแบบง่ายๆนะครับ แต่ยังมีปัญหาที่ไม่รู้จะกำหนดตำแหน่งของlayerยังไงให้ตรงกับ Text "V คาเฟ่" เพราะต้นฉบับใช้กำหนดความกว้างของเมนูเป็นเปอร์เซ็นต์ ไปลองดูที่ http://www.samukkee.org/thai/vcharkarn/Vmenu.htm
19 ส.ค. 2544 06:34


ความคิดเห็นที่ 2 โดย vmaster

ขอบคุณครับ กำลังทดลองครับ
20 ส.ค. 2544 16:00


ความคิดเห็นที่ 3 โดย Z-1

เจ๋งดี :-)
20 ส.ค. 2544 20:01


ความคิดเห็นที่ 4 งงๆ (Guest)

มันไม่ค่อย work กะ Netscape ครับ


ถ้าไม่มี onmouseout เจ้า Netscape มันจะโผล่แช่อยู่อย่างนั้น แต่พอใส่เข้าไปมันดันกระพริบๆ อืมม
22 ส.ค. 2544 08:26


ความคิดเห็นที่ 5 alpha_p (Guest)

ขอเสริม Joe:D นะครับ เรื่องที่ไม่รู้จะกำหนดตำแหน่งยังไง คิด ว่า แก้โดยการใช้ Object ของ mouse น่าจะสะดวกดีนะครับอาจจะไม่ตรงกับตำแหน่งของคำ แต่ก็ตรงกับเมาส์เลือกได้ใกล้ๆ วิธีก็คือ เมื่อ mouseover แล้วก็จับตำแหน่งเมาส์ แล้วคำนวณ กับ ตำแหน่งของเพจ (เวลาที่มีการใช้ scroll bar) ก็จะแสดงเมนูได้ตรงกับตำแหน่ง mouse พอดีครับ วิธีนี้ผมเคยใช้กับ ie แล้วก็ work ดีนะครับ แต่กับ netscape รู้สึกว่าจะไม่ได้เรื่อง เนื่องจากผม code script เป็นเฉพาะของ ie
22 ส.ค. 2544 21:55


ความคิดเห็นที่ 6 Joe:D (Guest)

ผมลองกับ Netscape4.7 (Unix และ Linux) ก็ใช้ได้นะครับเพียงแต่เลเยอร์จะค้างแช่ไว้ Quick&dirty fix ก็คือเพิ่ม"ปิดเมนู"ในแถบเมนูซะแบบในเวอร์ชั่น 2 ที่ http://samukkee.org/thai/vcharkarn/vmenu_v2.htm เดี๋ยวว่างๆแล้วจะลองวิธีตามที่คุณ alpha_p แนะนำนะครับ




ที่เว็บ http://www.engr.orst.edu ก็ใช้เมนูแบบนี้แต่ใช้ Javascript ซับซ้อนกว่า ลองไปศึกษาดูได้ครับ (เลเยอร์จะโผล่จากเมนูทางด้านซ้ายของรูปใหญ่ตรงกลาง)
23 ส.ค. 2544 06:34


ความคิดเห็นที่ 7 alpha_p (Guest)

ตัวอย่างของสิ่งที่ผมพูดถึงครับ เวลาเอาเมาส์ไป over ตรง overhere จะแสดงเมนู เมื่อเอาออกจะหน่วยเวลาประมาณ 2 วิ แล้วเมนูจะหายไป ถ้าใครมีไอเดียดีๆ จะแก้ไขตรงไหน ก็บอกด้วนนะครับ เพราะผมก็พึ่งหัดเขียน script




<body onmousemove="bb()"> <!-- bb เอาออกได้ ใช้ตรวจสอบเฉยๆ -->


<br><br><br><br><br><br>


<style>


A:link {color:white}


A:visited {color:white}


A:hover {color:black}


A:active {color:yellow}


</style>


<input name=mousex value=0><!-- คลิกแล้วจะแสดงตำแหน่งของเมาส์บนเพจ --->


<input name=mousey>




<div id="menu" onmouseout="over=0;" onmouseover="cc()" style="cursor:hand;width:100px">Over Here</div>


<!-- ส่วนนี้คือแสดงเมนู -->




<div onmouseover="over=1" onmouseout="over=0" id="linkpanel" style="position:absolute;visibility:hidden">


<a href=#>AAAAAA</a><br>


<a href=#>BBBBB</a><br>


<a href=#>CCCCCC</a><br>


<a href=#>DDDDD</a><br>


<a href=#>EEEE</a><br>


<a href=#>FFFFFF</a><br>


</div><!-- เมนูที่ pop-up ขึ้นมา -->


<script>


var over=0;




menu.style.background="gray"; // กำหนด background color


linkpanel.style.background="red";




function bb(){ // ตรวจสอบการคลิก แล้วแสดงตำแหน่งเมาส์


mousex.value = document.body.scrollLeft+event.clientX;


mousey.value = document.body.scrollTop+event.clientY;


}


function cc(){


linkpanel.style.left= document.body.scrollLeft+event.clientX;


linkpanel.style.top= document.body.scrollTop+event.clientY; // เปลี่ยนตำแหน่งให้ตรงกับเมาส์


linkpanel.style.visibility="visible"; //แสดงเมนู


over=1; // แสดงสถานะว่าเมาส์กำลัง over อยู่ ตรงที่ใช้แสดงเมนู หรือ ข้อความว่า over here


setTimeout("hc()",2000); // หน่วยเวลา เรียก ตัวเช็คเมนู


}




function hc(){


if(over==0){


linkpanel.style.visibility="hidden"; // ถ้าไม่ over แล้วให้ซ่อนเมนู


}else{


setTimeout("hc()",2000); // หน่วยเวลาให้เรียกตัวเองซ้ำ


}


}


</script>


<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>


<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>




<!-- ที่งหมดนี้ใช้ได้ใน ie อย่างเดียว -->


</body>
23 ส.ค. 2544 22:04


ความคิดเห็นที่ 8 โดย Ella Young

ฉันคิดว่านี้อาจช่วย: Javascript obfuscator

14 ส.ค. 2560 14:21

แสดงความคิดเห็น

กรุณา Login ก่อนแสดงความคิดเห็น