Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.04.2013, 15:03
gdv gdv вне форума
Новичок на форуме
Отправить личное сообщение для gdv Посмотреть профиль Найти все сообщения от gdv
 
Регистрация: 13.04.2013
Сообщений: 5

javascript как вставить изображение
имеется скрипт теста для сотрудников, не получается вставитькартинку, Что не так делаю?:
var title = '11111'; 
 var questions=[ 
 { 
     text: "Вопрос",
answers: ["Ответ1",
"Ответ2",
"Ответ3"],
  correctAnswer: 2 
 },
var img = document.createElement("IMG");
img.src = "upload/medialibrary/e60/e605f52693f032eb03f46ffde79ef5bf.jpg";
 { 
     text: "Вопрос",
answers: ["Ответ1",
"Ответ2",
"Ответ3"],
  correctAnswer: 2 
 }
 ]; 
  
 var yourAns = new Array; 
 var score = 0; 
  
 function Engine(question, answer) {yourAns[question]=answer;} 
  
 function Score(){ 
    var answerText = "Результаты тестирования:\n"; 
    for(var i = 0; i < yourAns.length; ++i){ 
     var num = i+1; 
     answerText=answerText+"\n    Вопрос №"+ num +""; 
     if(yourAns[i]!=questions[i].correctAnswer){ 
         answerText=answerText+"\n    Правильный ответ: " + 
         questions[i].answers[questions[i].correctAnswer] + "\n"; 
       } 
         else{ 
         answerText=answerText+": Верно! \n"; 
         ++score; 
         } 
        } 
  
    answerText=answerText+"\nВсего правильных ответов: "+score+"\n"; 
  
    alert(answerText); 
    yourAns = new Array; 
    score = 0; 
    clearForm("quiz"); 
 } 
 function clearForm(name) { 
    var f = document.forms[name]; 
    for(var i = 0; i < f.elements.length; ++i) { 
     if(f.elements[i].checked) 
         f.elements[i].checked = false; 
 } 
 }


Скрипт работает без:
var img = document.createElement("IMG");
img.src = "upload/medialibrary/e60/e605f52693f032eb03f46ffde79ef5bf.jpg";


Т.е. ко второму вопросу идет фотовопрос. Подскажите, как сделать что бы работало?
Ответить с цитированием
  #2 (permalink)  
Старый 13.04.2013, 16:15
Аспирант
Отправить личное сообщение для Ervin Посмотреть профиль Найти все сообщения от Ervin
 
Регистрация: 19.03.2013
Сообщений: 84

var img = document.createElement("IMG");
img.src = "upload/medialibrary/e60/e605f52693f032eb03f46ffde79ef5bf.jpg";


Эту часть объявить под массивом с вопросами и все будет ок.
Ответить с цитированием
  #3 (permalink)  
Старый 13.04.2013, 16:29
gdv gdv вне форума
Новичок на форуме
Отправить личное сообщение для gdv Посмотреть профиль Найти все сообщения от gdv
 
Регистрация: 13.04.2013
Сообщений: 5

Скрипт работает, но изображение не появляется. И мне хотелось бы его вставить в сам массив, а не под ним.
Ответить с цитированием
  #4 (permalink)  
Старый 13.04.2013, 16:32
gdv gdv вне форума
Новичок на форуме
Отправить личное сообщение для gdv Посмотреть профиль Найти все сообщения от gdv
 
Регистрация: 13.04.2013
Сообщений: 5

Сообщение от Ervin Посмотреть сообщение
var img = document.createElement("IMG");
img.src = "upload/medialibrary/e60/e605f52693f032eb03f46ffde79ef5bf.jpg";


Эту часть объявить под массивом с вопросами и все будет ок.
Скрипт работает, но изображение не появляется. И мне хотелось бы его вставить в сам массив, а не под ним.
Ответить с цитированием
  #5 (permalink)  
Старый 13.04.2013, 17:06
Аватар для rgl
rgl rgl вне форума
Профессор
Отправить личное сообщение для rgl Посмотреть профиль Найти все сообщения от rgl
 
Регистрация: 28.02.2011
Сообщений: 349

Чтобы изображение появилось, надо не только его создать, но и добавить в документ. (appendChild, insertBefore, ...)
Ответить с цитированием
  #6 (permalink)  
Старый 13.04.2013, 20:26
gdv gdv вне форума
Новичок на форуме
Отправить личное сообщение для gdv Посмотреть профиль Найти все сообщения от gdv
 
Регистрация: 13.04.2013
Сообщений: 5

Сообщение от rgl Посмотреть сообщение
Чтобы изображение появилось, надо не только его создать, но и добавить в документ. (appendChild, insertBefore, ...)
Не могли бы вы написать пример кода использования метода appendChild в моём случае? Пока только знакомлюсь с javascript и много не знаю.
Ответить с цитированием
  #7 (permalink)  
Старый 13.04.2013, 20:52
Аспирант
Отправить личное сообщение для Ervin Посмотреть профиль Найти все сообщения от Ervin
 
Регистрация: 19.03.2013
Сообщений: 84

var parentEl = document.getElementById("id"),
     img = document.createElement("IMG");

img.src = "/image.jpg";


parentEl.appendChild(img);
Ответить с цитированием
  #8 (permalink)  
Старый 13.04.2013, 21:27
gdv gdv вне форума
Новичок на форуме
Отправить личное сообщение для gdv Посмотреть профиль Найти все сообщения от gdv
 
Регистрация: 13.04.2013
Сообщений: 5

Сообщение от Ervin Посмотреть сообщение
var parentEl = document.getElementById("id"),
     img = document.createElement("IMG");

img.src = "/image.jpg";


parentEl.appendChild(img);

Простите, правильно ли я понял?
var title = '11111'; 

var parentEl = document.getElementById("id"),
img = document.createElement("IMG");
img.src = "/upload/medialibrary/e60/e605f52693f032eb03f46ffde79ef5bf.jpg";

 var questions=[ 
 { 
     text: "Вопрос",
answers: ["Ответ1",
"Ответ2",
"Ответ3"],
  correctAnswer: 2 
 },
 { 
parentEl.appendChild(img);
    text: "Вопрос",
answers: ["Ответ1",
"Ответ2",
"Ответ3"],
  correctAnswer: 2 
 }
 ]; 
   
 var yourAns = new Array; 
 var score = 0; 
   
 function Engine(question, answer) {yourAns[question]=answer;}
-----
-----


не работает! Уже думаю, хотя бы ссылку вставить
Ответить с цитированием
  #9 (permalink)  
Старый 13.04.2013, 21:42
Аватар для rgl
rgl rgl вне форума
Профессор
Отправить личное сообщение для rgl Посмотреть профиль Найти все сообщения от rgl
 
Регистрация: 28.02.2011
Сообщений: 349

Сообщение от gdv
Простите, правильно ли я понял?
Нет, не правильно. Вы не показали HTML и место, куда хотите вставить картинку. Вместо "id" нужно использовать id реально существующего элемента. Это во-первых. Ну а во-вторых, вынесите 16-ю строчку куда-нибудь в другое место, она там только мешает.
Ответить с цитированием
  #10 (permalink)  
Старый 18.04.2014, 02:06
Новичок на форуме
Отправить личное сообщение для Hishchnik Посмотреть профиль Найти все сообщения от Hishchnik
 
Регистрация: 18.04.2014
Сообщений: 2

К размышлению
а не проще использовать innerHTML???

document.getElementById("avatarka").innerHTML="<im g src='media/app/avatars/"+b+"' width='50' height='50'>";

для своего сайта реализовал превью меняемое при выборе аватарки
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как вставить атрибут "открыть страницу в новом окне браузера" в javascript? поможите? rashid86 Элементы интерфейса 1 29.03.2011 18:23
Подскажите как вставить переменную в RegExp c модификаторами Дмитрий-Solod Общие вопросы Javascript 2 16.11.2010 19:30
Как вывести ошибку в javascript? MCTrane Общие вопросы Javascript 13 05.05.2010 08:36
Как вставить изображение в документ, не используя таблицу? возжаждавший Элементы интерфейса 1 05.03.2010 19:36
Как вставить тег в конец других? SashaBorandi jQuery 7 28.08.2009 15:10