我现在想要在JavaScript上有类似document.write()的函数,但是它不是替换元素而是追加它们,因为我构建了一个用代码替换用户输入的函数,它可以工作,但问题是代替添加代码具体的地方,但他取代了所有页面内容。
我的功能代码。
function one(json) {
var j = 0;
var img = new Array();
var maxpost=json.feed.entry.length;
for (var i = 0; i < numposts1; i++) {
var entry = json.feed.entry[i];
var posttitle = entry.title.$t;
var pcm;
var posturl;
var postAuthor = entry.author[0].name.$t;
var postLabels = entry.category[1].term;
if ((i>0)&&(i<maxpost)) {
var trtd = '<a href="'+posturl+'">'+posttitle+'</a><h2>'+posttitle+'</h2> <span>'+postAuthor+'</span><span>'+postLabels+'</span><div>'+img[i]+'</div>';
document.write(trtd);
}
j++;
}
}
这是代码的第二部分
$(document).ready(function(){
$('.widget-content').each(function(){
var b = $(this).html();
var a = b.match(/[^[\]]+(?=])/g);
var code = $('#myscript').attr('src');
var script= document.createElement('script');
script.type='text/javascript';
script.src=code;
$('.HTML').append("<script id='myscript' src='/feeds/posts/default/-/Break?published&alt=json-in-script&callback=one'><\/script>");
});
});
答案 0 :(得分:0)
在原始javascript中,您可以使用元素的innerHTML
属性,例如:
var stringToAppend = "<script id='myscript' src='/feeds/posts/default/-/Break?published&alt=json-in-script&callback=one'><\/script>";
document.getElemetsByClassName('HTML')[0].innerHTML += stringToAppend;
请注意,我使用+=
运算符将追加字符串添加到现有内容中。
a += b
相当于a = a + b
如果您对 jQuery 持开放态度,只想将内容附加到页面末尾,请调用append
选择器上的body
方法:
$('body').append('<a href="'+posturl+'">'+posttitle+'</a><h2>'+posttitle+'</h2> <span>'+postAuthor+'</span><span>'+postLabels+'</span><div>'+img[i]+'</div>');