當我在第一次將JavaScript腳本附加到div時,它會使用外部數據和佈局填充我的div。但是,當我在與相同的JavaScript同一實例做一遍......注意到發生在div內容更改後再次運行JavaScript
$('#JsModelSubmit').on('click',function(e){
e.preventDefault();
$('.poptin-popup .js-container').empty();
$('#os-widget-jssdk').remove(); // Delete the script from the DOM
setTimeout(function(){
$('.poptin-popup .js-container').append($('#AddJsInput').val());
},300)
$('.poptin-popup .js-container').attr('data-script',$('#AddJsInput').val());
$(".poptin-popup .thumbnail-js").attr('src','').fadeOut();
$("#addJsModel").fadeOut();
});
和示例腳本,我追加爲:
<script type="text/javascript">
(function(d, s, id){
var js,
fjs = d.getElementsByTagName(s)[0],
r = Math.floor(new Date().getTime()/1000000);
if (d.getElementById(id)) {return;}
js = d.createElement(s); js.id = id; js.async=1;
js.src = "https://www.opinionstage.com/assets/loader.js?" + r;
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'os-widget-jssdk'));
</script><div class="os_widget" data-comments="false" data-of="outbraininteractive" data-path="/outbraininteractive/quiz-novice-or-wiz-test-your-digital-marketing-skills" id="os-widget-39833"></div>
第一次
這是我得到的結果:
第二次等等這是我得到的結果是:
這裏是的jsfiddle:
https://jsfiddle.net/86c9vkog/3/
請幫幫忙!謝謝!
嘗試$(文件)。在( '點擊',功能(E){} 'JsModelSubmit。');使用類而不是id爲按鈕 –
不工作!謝謝! –
也許'.load()'可能會有所幫助。 '$('。poptin-popup .js-container')。append($('#AddJsInput').val()).load()' – james