Jump to content

DarkDaemon

Newbie
  • Posts

    6
  • Joined

  • Last visited

Everything posted by DarkDaemon

  1. а это onclick='ins(this)' не лишнее? Согласен, тоже лишнее. На другом форуме предложили более грамотное решение: <form id="form"> <input type='button' name='butt[]' value='ok1'/> <input type='button' name='butt[]' value='ok2'/> <input type='button' name='butt[]' value='ok3'/> <input type='button' name='butt[]' value='ok4'/> <form> <script> window.onload = function () { function index(element, collection) { var len = collection.length; for (var i = 0; i < len; i++) { if (element == collection[i]) { return i; } } } document.getElementById('form').onclick = function (e) { var e = e || event; var target = e.target || e.srcElement; if (target.type == 'button') { alert(index(target, document.getElementsByName('butt[]'))); } } } </script>
  2. Дак это надо каждой кнопке его присваивать, лишнее действие и, наверное, засорение кода и памяти. У кнопки ведь есть индекс, вот мне интересно, как его найти
  3. Имеется массив кнопок button[]. Как узнать индекс нажатой кнопки? Два часа рылся в интернете, а так же на этом форуме, ответ не нашел. Я решил задачу, но считаю, что должно быть решение проще: <script> function ins(e){ var o = document.getElementsByName('butt[]'); for (i=0;i<o.length;i++){ if (o(i) == e) alert ('Индекс ' + i); } } </script> <input type='button' name='butt[]' value='ok1' onclick='ins(this)'/> <input type='button' name='butt[]' value='ok2' onclick='ins(this)'/> <input type='button' name='butt[]' value='ok3' onclick='ins(this)'/> <input type='button' name='butt[]' value='ok4' onclick='ins(this)'/> <input type='button' name='butt[]' value='ok5' onclick='ins(this)'/> <input type='button' name='butt[]' value='ok6' onclick='ins(this)'/>
  4. Немного подумав, что код будет не универсальным и громоздким, решил сделать проще - теперь JavaScript создает MAP к картинке, осталось только ввести проценты <html> <head> <title>Untitled</title> </head> <body> <script language="JavaScript"> var width = (window.innerWidth)?window.innerWidth: ((document.all)?document.body.offsetWidth:null); var height = (window.innerHeight)?window.innerHeight: ((document.all)?document.body.offsetHeight:null); if (width > 0 && height > 0) { document.write("<map name='Map'>") document.write("<area shape='rect' coords='" + width*0.25 + "," + height*0.25 + "," + width*0.75 + "," + height*0.75 + "' href='#' alt='zone1'>") document.write("</map>") document.write("<img src=bg.jpg width='100%' border='0' usemap='#Map'/>") } if (width = 0) { document.writeln('Здесь должна быть картинка') } </script> </body> </html> Во флеше рисовать не умею, да и хочется сделать страницу, работающую без флеша. С абсолютно позиционированными ссылками не работал, но думается, что "оживить" элементы в картинке будет проще с MAP? Сейчас погуглил про абсолютное позиционирование - мне кажется, что оно именно в моем случае не поможет, т.к. формы "объектов-ссылок" в этой картинке очень сложные, их придется описывать полилиниями. Или я не прав?
  5. Большое спасибо за ответ. Попробую сделать только на JavaScript, идея такая: при загрузке страницы он будет определять ее ширину, и в зависимости от ширины выдавать картинку, например: при ширине экрана от 800 до 1024 пикселей картинка будет 800х600 с одной MAP, при ширине экрана от 1024 до 1280 пикселей картинка будет 1024х768 с другой MAP и так далее Вот за 20 минут состряпал: <html> <head> <title>Untitled</title> </head> <body> <script language="JavaScript"> var width = (window.innerWidth)?window.innerWidth: ((document.all)?document.body.offsetWidth:null); if (width > 0 && width < 800) { document.write("<img src=bg1.jpg border='0' usemap='#Map1'/>") } if (width > 799 && width < 1024) { document.write("<img src=bg2.jpg border='0' usemap='#Map2'/>") } if (width > 1023 && width < 1280) { document.write("<img src=bg3.jpg border='0' usemap='#Map3'/>") } if (width > 1279 && width < 1366) { document.write("<img src=bg4.jpg border='0' usemap='#Map4'/>") } if (width > 1365 && width < 1440) { document.write("<img src=bg5.jpg border='0' usemap='#Map5'/>") } if (width > 1439 && width < 1600) { document.write("<img src=bg6.jpg border='0' usemap='#Map6'/>") } if (width > 1599 && width < 1680) { document.write("<img src=bg7.jpg border='0' usemap='#Map7'/>") } if (width > 1679 && width < 1920) { document.write("<img src=bg8.jpg border='0' usemap='#Map8'/>") } if (width > 1919) { document.write("<img src=bg9.jpg border='0' usemap='#Map9'/>") } if (width = 0) { document.writeln('Здесь должна быть картинка') } </script> </body> </html>
  6. Нужна интерактивная МАСШТАБИРУЕМАЯ картинка на весь экран. Хочу сделать с помощью тэга area. Всё бы ничего, да вот при масштабировании регионы уползают кто куда Вроде бы можно указывать координаты в процентах, но ни в IE, ни в Opera данный код не работает У кого какие есть соображения? <img src=bg.jpg width="100%" border="0" usemap="#Map"/> <map name="Map"> <area shape="rect" coords="0%, 0%, 50%, 100%" href="#" alt="zone1"> </map>
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy