Я стал отслеживать каждое передвижение
if( document.all ) {
} else if( document.getElementById ) { document.captureEvents( Event.MOUSEMOVE ); document.onmousemove = getCoord; }
Я стал отслеживать каждое передвижение мыши на экране и записывать координаты курсора в глобальные переменные:
var mouseX; var mouseY;
function getCoord( event ) { mouseX = event.pageX; mouseY = event.pageY; }
Теперь соберу саму функцию отображения меню:
function myfunction() { if( document.all ) { if( event.button == 2 event.button == 3 ) { if( !document.all.contextmenu ) return; var menu = document.all.contextmenu; menu.style.left = event.offsetX; menu.style.top = event.offsetY; menu.className = menuState ? "hidemenu" : "showmenu"; menuState = !menuState; } } else if ( document.getElementById ) { if( !document.getElementById( "contextmenu" ) ) return; var menu = document.getElementById( "contextmenu" ); menu.style.left = mouseX; menu.style.top = mouseY; menu.className = menuState ? "hidemenu" : "showmenu"; menuState = !menuState; return false; } }
Чтобы разобраться в Функции, не требуется особых навыков в JavaScript. Устанавливается положение меню на основе координат курсора с ветвлением на два браузера. Разница лишь в том, что Internet Explorer получает координаты из события event, а Netscape Navigator из глобальных переменных. Если вы правильно собрали скрипт - у вас должно получиться нечто подобное:
<html> <head> <meta http-equiv="Content-type" content="text/html; charset=Windows-1251"> <title>Context menu</title> <style type="text/css"> <!-- .hidemenu { display: none; position: absolute; } .showmenu { display: block; position: absolute; } //--> </style>
<script language="JavaScript" type="text/javascript"> <!-- if( document.all ) { document.onmousedown = myfunction; } else if( document.getElementById ) { document.captureEvents( Event.MOUSEMOVE ); document.onmousemove = getCoord; }
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий