Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Смена картинки по нажатию на чебокс (https://javascript.ru/forum/misc/14686-smena-kartinki-po-nazhatiyu-na-cheboks.html)

arahmanov 01.02.2011 15:44

Цитата:

Сообщение от ksa (Сообщение 90381)
Если элемент уже существует, тогда так

if (gop = 700) {val='images/moto2.jpg'}
else if (gop = 200) {val='images/moto4.jpg'};
document.getElementById('My_Img').src=val

а если его еще нет на странице ?
как его создать ?

ksa 01.02.2011 16:03

Цитата:

Сообщение от arahmanov
как его создать ?

Как вариант...

<script>
function CreateImg() {
    var o=document.createElement('img')
    o.src='http://javascript.ru/forum/images/ca_serenity/misc/logo.gif'
    var oe=document.getElementById('box')
    oe.appendChild(o)
}
</script>

<div id='box'></div>
<input type='button' value='Create Img' onclick='CreateImg()' />

arahmanov 02.02.2011 13:32

Цитата:

Сообщение от ksa (Сообщение 90699)
Как вариант...

<script>
function CreateImg() {
    var o=document.createElement('img')
    o.src='http://javascript.ru/forum/images/ca_serenity/misc/logo.gif'
    var oe=document.getElementById('box')
    oe.appendChild(o)
}
</script>

<div id='box'></div>
<input type='button' value='Create Img' onclick='CreateImg()' />


а можно ли в зависимости от переменной выполнять определенную функцию например так
<script>

if (gop = 700) {onclick=CreateImg()};

</script>
<script>


function CreateImg() {
var o=document.createElement('img')
o.src='http://javascript.ru/forum/images/ca_serenity/misc/logo.gif'
var oe=document.getElementById('box')
oe.appendChild(o)
}
</script>
<script>
function CreateImg2() {
var o=document.createElement('img')
o.src='http://javascript.ru/forum/images/ca_serenity/misc/logo.gif'
var oe=document.getElementById('box')
oe.appendChild(o)
}
</script>

Soul D Esire 02.02.2011 14:18

<input type="button" onclick="if (gop == 700) {CreatImg();};"


Никто вложенные операторы еще не отменял... Вот только интересно, что же такое gop? Если это какой-то атрибут или какое-то свойство DOM, то да, такая конструкция юзабельна... Вообще эту переменную "гоп" можно передать и в саму функцию... что-то типа Creaming(gop)...

ksa 02.02.2011 14:21

Цитата:

Сообщение от arahmanov
можно ли в зависимости от переменной выполнять определенную функцию например так
<script>

 if (gop = 700) {onclick=CreateImg()};

</script>

Разумеется! :) Только наверное вот так

<script>
if (gop = 700) {
   CreateImg();
};
</script>

Soul D Esire 02.02.2011 14:31

Несколько замечаний:
1) насколько я знаю, скрипт выполняется один раз, если встроен в тег боди по мере загрузки страницы и не помещен в функцию, описанную в теге хэд.
2) функция КриэйтИмж() выполнится не при нажатии на клавишу(онклик), а при загрузке страницы.
3) если скрипт описан до создания элемента "гоп", то скрипт будет работать неверно...

Пы. Сы. Я все еще жду объяснения, что такое этот gop...

arahmanov 02.02.2011 14:34

Цитата:

Сообщение от Soul D Esire (Сообщение 90808)
Несколько замечаний:
1) насколько я знаю, скрипт выполняется один раз, если встроен в тег боди по мере загрузки страницы и не помещен в функцию, описанную в теге хэд.
2) функция КриэйтИмж() выполнится не при нажатии на клавишу(онклик), а при загрузке страницы.
3) если скрипт описан до создания элемента "гоп", то скрипт будет работать неверно...

Пы. Сы. Я все еще жду объяснения, что такое этот gop...

Гоп это просто переменная просто тупо ее так назвали ....:victory:

arahmanov 02.02.2011 14:35

Цитата:

Сообщение от ksa (Сообщение 90804)
Разумеется! :) Только наверное вот так

<script>
if (gop = 700) {
   CreateImg();
};
</script>

спасибо!

arahmanov 02.02.2011 16:14

вот что у меня получилось


<script>
function CreateImg() {
var o=document.createElement('img')
o.src='http://javascript.ru/forum/images/ca_serenity/misc/logo.gif'
var oe=document.getElementById('box')
oe.appendChild(o)
}
</script>



<select id="firewall" onchange='Go()'>
<option value="0">Выберите тип...</option>
<option value='200'>Аппаратное устройсво</option>
<option value='700' onClick="CreateImg()">Программное решение</option>
</select>
<div id="box"></div>

все работает если я выбираю пункт Программное решение картинка появляется, но сделать что если я выбираю другой пункт она удалялась а на ее месте появлялась новая ???

arahmanov 02.02.2011 16:31

изначально я хотел сделать так , но не получается

var o=document.getElementById('firewall')
var gop = o.value;

if (gop = 700) {val='images/moto2.jpg'}
else if (gop = 200) {val='images/moto4.jpg'};
document.getElementById('My_Img').src=val


<div id="My_Img"></div>

<select id="firewall" onchange='Go()'>
<option value="0">Выберите тип...</option>
<option value='200'>Аппаратное устройсво</option>
<option value='700'>Программное решение</option>
</select>


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