Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   не работает скрипт в фаерфоксе (https://javascript.ru/forum/misc/26146-ne-rabotaet-skript-v-faerfokse.html)

greeb 27.02.2012 22:32

не работает скрипт в фаерфоксе
 
Имеется простенький скрипт,
<script language = 'javascript'>
  function changeImage(nm) {
    var im = document.getElementById('img');
    img.src = nm;
    var lnk = document.getElementById('lk');
    lnk.href = nm;
  }
</script>


Вызваю так:
<a href='#top' onclick=changeImage('".$row['foto2']."') >


Работает везде только не в фаерфоксе... Я с Java не очень занком, поэтому прошу помощи.
Заранне спасибо.

Gozar 27.02.2012 22:51

Цитата:

Сообщение от greeb (Сообщение 160310)
Я с Java не очень занком, поэтому прошу помощи.

Это не форум по Java, почему вы просите помощь у нас, а не на форуме Java?

monolithed 27.02.2012 22:52

Цитата:

Сообщение от greeb
<script language = 'javascript'>

для начала:
<script>
//..
</script>

<script type="text/javascript">
//..
</script>

<script type="application/x-javascript">
//..
</script>

<script type="application/javascript">
//..
</script>


Цитата:

Сообщение от greeb
var im = document.getElementById('img');
img.src = nm;

Почему у вас переменная назывется im, а свойство берете у img?

Цитата:

Сообщение от greeb
onclick=changeImage('".$row['foto2']."')

onclick="changeImage('......')"

Gozar 27.02.2012 22:57

Может он ещё и с php не очень знаком.
Кавычки можно экранировать:
echo "<a onclick=\"changeImage('".$row['foto2']."')\">";

greeb 27.02.2012 23:05

Цитата:

Почему у вас переменная назывется im, а свойство берете у img?
насколько я понимаю, то етой строкой просто присваевается екзэмпляр нужного мне имеджа, что бы я потом смог обратится к нужному свойству...
Цитата:

<script type="application/javascript">
Сменил, не помогло(
Цитата:

Сообщение от Gozar (Сообщение 160317)
Может он ещё и с php не очень знаком.
Кавычки можно экранировать:
echo "<a onclick=\"changeImage('".$row['foto2']."')\">";

Но в других же браузерах все работает... или фаерфокс как то по особому понимает кавычки?

Upd: Если добавить alert(nm); то фаерфокс отображает окно с переменной, но ничего больше не происходит...Может лис не пониамет каких то функциий? Может нужно заменить что то?

greeb 28.02.2012 00:12

----Почему у вас переменная назывется im, а свойство берете у img?---
только понял вопрос)))
вообщем если я меняю имяпеременной на im то не работает скрипт вообще а в хроме пишет:

Uncaught TypeError: Cannot set property 'src' of null

monolithed 28.02.2012 08:54

Цитата:

Сообщение от greeb
Uncaught TypeError: Cannot set property 'src' of null

Значит document.getElementById('img') возвращает null, а вы null присваиваете свойство src

Gozar 28.02.2012 18:21

Цитата:

Сообщение от greeb (Сообщение 160322)
Но в других же браузерах все работает... или фаерфокс как то по особому понимает кавычки?

Перестань срать в код.

Тебе сказали поставить кавычки, значит поставь.
Поставь Firebug в Firefox, нажми F12 затем Ctrl+F5 и выясни причину ошибки.


Часовой пояс GMT +3, время: 18:48.