Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » [решено] JavaScript. Скрыть/показать элемент по событию.

Ответить
Настройки темы
[решено] JavaScript. Скрыть/показать элемент по событию.

Аватара для System Failure

Старожил


Сообщения: 175
Благодарности: 15


Конфигурация

Профиль | Отправить PM | Цитировать


Только начал изучать ЯваСкрипт… Вот только принялся делать маленький скриптик, и не работает. Суть скрипта вот в чем: Есть ячейка, при нажатии на которую, должна появлятся еще одна таблица. Где — в данный момент не важно, да и что внутри, тоже пока не важно. Вот скрипт что у меня получился. Просьба сильно не пинать, я только-только начал познавать азы.

Код: Выделить весь код
<body id="body" name="body">
<form id="form" name="form">
<table width="50" height="50" border="inset">
<tr width="50" height="50"><td onclick=showmenu1(); width="50" height="50">mainTD</td></tr>
</table>
</form>
<div id=popupmenu name=popupmenu> </div>
<script>
function showmenu1(){
popupmenu.style='position: absolute; top:51; left:1'
popupmenu.innerHTML="<table border="inset" width="20" Height="20"><tr><td>td1</td></tr></table>"
}
</script>
</body>

Отправлено: 12:29, 16-07-2007

 

Аватара для Coutty

Кот Ти


Сообщения: 7318
Благодарности: 1204

Профиль | Отправить PM | Цитировать


Цитата System Failure:
помогите настроить "popupmenu.style"!! все перепровал! ниче не выходит=(
В приведённом примере работало?
У меня - работало (Опера 9.20).
Дописывай через точку с запятой то, что тебе нужно:
HTML код: Выделить весь код
popupmenu.style="position:absolute; top: 100px; left:100px; background-color:green; color:yellow; font-weight:bold";

Цитата System Failure:
так как у меня не одна ячейка будет, а 16, следовательно нужно, чтобы и "popupmenu" появлялось не в одном и томже месте.
Пиши так:
HTML код: Выделить весь код
<html><head><title>1</title> </head> <body id="body" name="body"> <form id="form" name="form"> <table width="50" height="50" border="inset"> <tr><td onClick="showmenu(100, 100, 'Котти-кун повелитель мануалов')">first</td></tr> <tr><td onClick="showmenu(100, 200, 'Котти-кун любитель анимэ')">second</td></tr> <tr><td onClick="showmenu(100, 300, 'Котти-кун повелитель вселенной! =^_^=')">third</td></tr> </table> </form> <div id=popupmenu name=popupmenu></div> <script> <!-- function showmenu(x, y, text){ var popupmenu = document.getElementById('popupmenu'); popupmenu.innerHTML='<table><tr><td>' + text + '</td></tr></table>'; popupmenu.style="position:absolute; top: " + y + "px; left:" + x + "px; background-color:yellow;"; } //--> </script> </body> </html>

Что изменилось:
1. Объявлении функции добавлены параметры x, y и text. Можно написать сколько угодно, с любыми именами и даже присвоить значение по умолчанию - пиши, например: function showmenu(x, y, text="текст по умолчанию")
2.1. Теперь эти параметры нужно передать в функцию. Для этого, как видно, используется такой метод: onClick="showmenu(100, 100, 'Котти-кун повелитель мануалов')". Нужно обратить внимание, что если по краям используются двойные кавычки, то внутри надо использовать одинарные. И наоборот. Если же нужно использовать двойные, то они экранируются обратным слэшем: onClick="showmenu(100, 100, \"Котти-кун повелитель мануалов\")" (пишу по памяти, поэтому, быть может, к JavaScript'у это и не относится).
2.2. При передаче параметров цифры заключать в кавычки не обязательно. Текст - обязательно.
3. Теперь эти параметры надо задействовать:
popupmenu.innerHTML='<table><tr><td>' + text + '</td></tr></table>';
Тут вместо параметра text подставляется значение, переданное в функцию. Плюсы используются для объединения строк. Нужно обратить внимание, что текст, написанный до плюса (и после тоже) должен быть заключён в кавычки. Т.е. так работать не будет (точнее - переменная не подставится): popupmenu.innerHTML='<table><tr><td> + text + </td></tr></table>';
Без плюсов, соответственно, тоже не подставится: popupmenu.innerHTML='<table><tr><td>text</td></tr></table>';

Цитата System Failure:
Можно, кончно написать 16 скриптов..... но это не дело...
Неправда! Так поступают настоящие программисты! =^_^=
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:12, 16-07-2007 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для System Failure

Старожил


Сообщения: 175
Благодарности: 15

Профиль | Отправить PM | Цитировать


спасибо тебе, о гуру JS! Гы.... что за напасть... никак не пойму. при работе с "popupmenu.style" выдает ошибку "член группы не найден", и соответственно необходимые данные не появляются где мне надо=( вызов переменных правильно указан? я написал в ячейке переменную, но она отразилась в виде текста.

Последний раз редактировалось System Failure, 16-07-2007 в 18:59.


Отправлено: 18:24, 16-07-2007 | #12


Аватара для System Failure

Старожил


Сообщения: 175
Благодарности: 15

Профиль | Отправить PM | Цитировать


решил проблему следующим путем:
HTML код: Выделить весь код
<html><head><title>1</title> </head> <body id="body" name="body"> <form id="form" name="form"> <table width="50" height="50" border="inset"> <tr><td onClick="showmenu(100, 100)">first</td></tr> <tr><td onClick="showmenu(100, 200)">second</td></tr> <tr><td onClick="showmenu(100, 300)">third</td></tr> </table> </form> <div id="popupmenu" style="background-color: rgb(0, 102, 204); position:absolute; visibility:hidden"></div> <script> <!-- function showmenu(x, y, text){ var popupmenu = document.getElementById('popupmenu'); popupmenu.innerHTML='<table><tr><td>01</td></tr></table>'; popupmenu.style.top = x ; popupmenu.style.left = y ; popupmenu.style.visibility = "visible"; } //--> </script> </body> </html>

Обратите внимание на заданный заранее стиль спрятанного "ДИВа". На этом все. будут вопросы - напишу новый топик. Этот можно считать решенным и закрыть.
Это сообщение посчитали полезным следующие участники:

Отправлено: 12:24, 20-07-2007 | #13



Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » [решено] JavaScript. Скрыть/показать элемент по событию.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Любой язык - [решено] Надо показать диалоговое окно с произвольным текстом. volk1234 Скриптовые языки администрирования Windows 10 24-01-2010 14:17
[решено] Javascript. Скрыть - показать картинки при помощи getElementsByName Igor_I Вебмастеру 14 26-12-2008 20:52
[решено] элемент select с цифрами dima1981 Вебмастеру 2 11-11-2008 16:34
C/C++ - [решено] Как показать окно процесса EvgeniyQQQ Программирование и базы данных 5 14-11-2007 16:03
[решено] Как показать во всей сети папку которую расшарил в AD? Keo Microsoft Windows NT/2000/2003 5 09-11-2006 15:19




 
Переход