Цитата 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 скриптов..... но это не дело...
|
Неправда! Так поступают настоящие программисты! =^_^=