Просмотр полной версии : Изменение цвета ссылки.
пробую делать так:
<a name="ula" href="#" onclick="openMenu(this)" onMouseOver="ChangeFon(this.name)">Menu</a>
function ChangeFon(node) {
document.all.node.style.color="blue";
}
но он ищет "node" как название объекта, а не как переменную.
пробовал и так:
function ChangeFon(node) {
document.GetElementByName(node).color="blue";
}
никакого эффекта. в чем я недопонимаю?
document.getElementsByName(node)[0]
ну с грамматическими ошибками понятно, а вот что дает [0]?
все, работает, спасибо.
з.ы. мало опыта, только начинаю.
document.getElementsByName(node)
Возвращает соответственно не Element, а Elements, т.е. коллекцию элементов с таким именем. 0ой индекс возвращает само собой самый первый.
Вообще, судя по вопросу, вы вообще ничего не знаете. Рекомендую прочитать хоть какую-нить книжечку по js даже саму тоненькую. Главное чтоб год выпуска не 1997 какой-нить.)
я так и понял что это индекс массива элементов (коллекция элементов), тогда возникает вопрос: как мне передать в функцию этот самый индекс?Если у меня массив из n элементов.
з.ы. книжки обязательно прочитаю.
function ChangeFon(node,i) {
document.getElementsByName(node)[i].style.color="blue";
}
нет, это то понятно.
мне непонятно как передать этот индекс в функцию
т.е.:
<a name="ula" href="#" onMouseOver="ChangeFon(this.name, вот здесь же надо передать параметр i)">Menu</a>
bpystep, какая жуть!
<style>
a:hover {
color: red;
}
</style>
<a href="#">Menu</a>
Вот и все.
ksa,
я знаю как это сделать с помощью css, просто я хочу это реализовать на javascript, для последующего изучения данного языка
просто я хочу это реализовать на javascript
Тогда так...
<a name="ula" href="#" onmouseover="this.style.color='red'">Menu</a>
Или так...
<script type="text/javascript">
function ChangeFon(Obj) {
Obj.style.color="red";
}
</script>
<a href="#" onmouseover="ChangeFon(this)">Menu</a>
для последующего изучения данного языка
Как ты чему-то научишся, если ты постоянно спрашиваешь как сделать букварские задачки? Ведь про это написано в любом учебнике...
а через функцию? так как делали выше... можно как нибудь передать индекс в функцию?
<a name="ula" href="#" onMouseOver="ChangeFon(this.name, что вот здесь надо передать?)">Menu</a>
function ChangeFon(node,i) {
document.getElementsByName(node)[i].style.color="blue";
}
<a name="ula" href="#" onMouseOver="ChangeFon(this.name, '0')">Menu</a>
<script>
function ChangeFon(node,i) {
document.getElementsByName(node)[i].style.color="red"; //тут было blue
}
</script>
P.S.я думаю вы пробовали хоть что-то сделать, так вот как вы хотели увидеть изменения когда ссылка и так синего цвета, и вы ее на синий меняете О_о
думаете я сам не догадываюсь что надо передать 0? а как быть с другими елементами к ним тоже передавать какието числа, чтоб потом было в функции вот так:
function ChangeFon(node,index) {
if (index == 0) document.getElementsByName(node)[index].style.color="blue";
if (index == 1) document.getElementsByName(node)[index].style.color="blue";
if (index == 2) document.getElementsByName(node)[index].style.color="blue";
}
и т.д.? ну это же бред господа.
можно ли передать в функцию именно индекс этого элемента или нет? как-нибудь то можно по-любой.
а по поводу цвета, это лишь маленький кусок кода, поэтому там стоит синий, но это не принципиально.
trikadin
17.11.2011, 00:35
bpystep, дурной, штоле? Передавай не порядковый номер, а this. И будет тебе счастье.
trikadin,
мб по внимательнее почитаешь, что я там написал.
спасибо, именно это мне и надо было. this овтетил на вопрос.
з.ы. неужели сразу нельзя было написать.
trikadin
17.11.2011, 00:52
trikadin,
мб по внимательнее почитаешь, что я там написал.
А, собственно, что я не так прочитал? Кстати, о написаннном: такого, извиняюсь, редкостного говнокода я давно не видел. Вот это вот что?
function ChangeFon(node,index) {
if (index == 0) document.getElementsByName(node)[index].style.color="blue";
if (index == 1) document.getElementsByName(node)[index].style.color="blue";
if (index == 2) document.getElementsByName(node)[index].style.color="blue";
}
Вы это под чем писали? Я тоже хочу. Три раза проверять, чему равно значение index, и при этом каждый раз делать одно и то же - писать такое надо уметь, да...
спасибо, именно это мне и надо было. this овтетил на вопрос.
з.ы. неужели сразу нельзя было написать.
А вам это ksa в 10-м сообщении написал. Ваша невнимательность вам не на руку.
ну я же там и написал что это бред, просто привел этот бред а примере...
извиняюсь, да, ksa это написал, но открылась 2 старница поста, поэтому и пропустил.
vBulletin® v3.6.7, Copyright ©2000-2025, Jelsoft Enterprises Ltd. Перевод: zCarot