使用javascript向div添加内容 - ' Uncaught SyntaxError:无效或意外的令牌'?

时间:2016-07-04 18:20:06

标签: javascript jquery html html5

我从以下代码中收到此错误:

  

未捕获的SyntaxError:无效或意外的令牌

var d1 = document.getElementById('grid');
d1.insertAdjacentHTML('beforeend', '   <figure>
    <img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/123941/placeimg01.jpg" alt="">
    <figcaption>
        Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua
    </figcaption>
</figure>');

Jsfiddle

1 个答案:

答案 0 :(得分:3)

字符串中的换行符导致问题。要解决此问题,您可以将字符串放在一行:

var d1 = document.getElementById('grid');
d1.insertAdjacentHTML('beforeend', '<figure><img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/123941/placeimg01.jpg" alt=""><figcaption>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua</figcaption></figure>');

Updated fiddle

或者你可以在不同的行上连接它:

var d1 = document.getElementById('grid');
d1.insertAdjacentHTML('beforeend', '<figure>' +
    '<img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/123941/placeimg01.jpg" alt="">' +
    '<figcaption>' +
        'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua' +
    '</figcaption>' +
'</figure>');

Example fiddle