2015-11-26 3 views
0

меня возникли проблемы со следующими JavaScript,SyntaxError: ожидается выражение, получил «<» Пытался убежать, но не работает

<script type='text/javascript'> 
var $OriginalImage = 'http://4.bp.blogspot.com/-SUwv0x4nozI/UjBwsjK1AGI/AAAAAAAAZAI/HgfzndxJ_Nk/s1600/Android+Wallpaper.jpg'; 
var $thumbnail = $OriginalImage.replace('s1600','s320'); 

document.write = '<img alt='Android Monochrome Wallpaper' class='img-responsive img-hover' src=' +$thumbnail+ '/>'; 
</script> 

в консоли он получил сообщение об ошибке (ы).

screenshot

Я попытался document.write(); разметку быть экранированы, но Бесполезный, т работу ... Как решить эту проблему?

+2

У вас есть проблема с цитатой. Попробуйте 'document.write = 'Android Monochrome Wallpaper';' – Michel

+2

Также 'document.write' является функцией. Вы должны называть это, а не назначать ему. –

+2

Кроме того, создайте элемент img вместо 'document.write' и вставьте его в' appendChild' –

ответ

1

Вот правильно спасся результат:

<script type='text/javascript'> 
    var OriginalImage = 'http://4.bp.blogspot.com/-SUwv0x4nozI/UjBwsjK1AGI/AAAAAAAAZAI/HgfzndxJ_Nk/s1600/Android+Wallpaper.jpg'; 
    var thumbnail = OriginalImage.replace('s1600','s320'); 
    document.write('<img alt="Android Monochrome Wallpaper" class="img-responsive img-hover" src="' +thumbnail+ '"/>'); 
</script> 

Но говорит, как @limelights в комментариях, вместо document.write, пойти на AppendChild

var OriginalImage = 'http://4.bp.blogspot.com/-SUwv0x4nozI/UjBwsjK1AGI/AAAAAAAAZAI/HgfzndxJ_Nk/s1600/Android+Wallpaper.jpg'; 
 
    var thumbnail = OriginalImage.replace('s1600', 's320'); 
 

 
    var DOM_img = document.createElement("img"); 
 
    DOM_img.alt = "Android Monochrome Wallpaper"; 
 
    DOM_img.class = "img-responsive img-hover" 
 
    DOM_img.src = thumbnail; 
 
    document.body.appendChild(DOM_img);

или с использованием setAttribute:

var OriginalImage = 'http://4.bp.blogspot.com/-SUwv0x4nozI/UjBwsjK1AGI/AAAAAAAAZAI/HgfzndxJ_Nk/s1600/Android+Wallpaper.jpg'; 
 

 
var thumbnail = OriginalImage.replace('s1600', 's320'); 
 
var elem = document.createElement("img"); 
 
elem.setAttribute("src", thumbnail); 
 
elem.setAttribute("class", "img-responsive img-hover"); 
 
elem.setAttribute("alt", "Android Monochrome Wallpaper"); 
 
document.body.appendChild(elem);

Дозапись на якорь тег:

var OriginalImage = 'http://4.bp.blogspot.com/-SUwv0x4nozI/UjBwsjK1AGI/AAAAAAAAZAI/HgfzndxJ_Nk/s1600/Android+Wallpaper.jpg'; 
 

 
    var thumbnail = OriginalImage.replace('s1600', 's320'); 
 
    var elem = document.createElement("img"); 
 
    elem.setAttribute("src", thumbnail); 
 
    elem.setAttribute("class", "img-responsive img-hover"); 
 
    elem.setAttribute("alt", "Android Monochrome Wallpaper"); 
 
    document.getElementById('addImage').appendChild(elem);
<a href="example.html" id="addImage"></a>

или без ID:

var OriginalImage = 'http://4.bp.blogspot.com/-SUwv0x4nozI/UjBwsjK1AGI/AAAAAAAAZAI/HgfzndxJ_Nk/s1600/Android+Wallpaper.jpg'; 
 

 
    var thumbnail = OriginalImage.replace('s1600', 's320'); 
 
    var elem = document.createElement("img"); 
 
    elem.setAttribute("src", thumbnail); 
 
    elem.setAttribute("class", "img-responsive img-hover"); 
 
    elem.setAttribute("alt", "Android Monochrome Wallpaper"); 
 
    document.getElementsByTagName("a")[0].appendChild(elem);
<a href="example.html"></a>

+0

да, но как это сделать? Просто добавьте этот 'var img = document.createElement ('img');'? Где будут другие атрибуты? Как класс, Alt – XeBii

+1

См. Обновленный ответ – Thamilan

+0

спасибо за ответ. Вместо добавления в тело 'document.body.appendChild (DOM_img); 'Я хочу добавить его с помощью' 'Я поместил скрипт в тег' a', но изображение не добавляется в тег. – XeBii

Смежные вопросы