我怎样才能做到以下几点:
document.all.regTitle.innerHTML = 'Hello World';
使用jQuery哪里regTitle是我的div id?
我怎样才能做到以下几点:
document.all.regTitle.innerHTML = 'Hello World';
使用jQuery哪里regTitle是我的div id?
当前回答
只是添加一些性能见解。
几年前,我有一个项目,我们在试图将一个大的HTML / Text设置为各种HTML元素时遇到了问题。
看起来,“重新创建”元素并将其注入DOM比任何更新DOM内容的建议方法都要快得多。
比如:
Var文本= "非常大的内容"; $ (" # regTitle ") .remove (); $ (" < div id =“regTitle”>“+文字+ " < / div > ") .appendTo(“身体”); < script src = " https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js " > < /脚本>
应该能让你有更好的表现。我最近没有试着去衡量它(现在的浏览器应该很聪明),但是如果你在寻找性能,它可能会有帮助。
缺点是您需要做更多的工作来保持脚本中的DOM和引用指向正确的对象。
其他回答
如果你有一个jQuery对象,你想渲染而不是现有的内容:然后只是重置内容并追加新的。
var itemtoReplaceContentOf = $('#regTitle');
itemtoReplaceContentOf.html('');
newcontent.appendTo(itemtoReplaceContentOf);
Or:
$('#regTitle').empty().append(newcontent);
var abc = document.getElementById("regTitle");
abc.innerHTML = "Hello World";
答:
$("#regTitle").html('Hello World');
解释:
$相当于jQuery。它们都表示jQuery库中的相同对象。括号内的“#regTitle”被称为选择器,jQuery库使用它来确定您想要将代码应用到html DOM(文档对象模型)的哪个元素。regTitle前面的#告诉jQuery, regTitle是DOM中元素的id。
从那里,点表示法被用来调用html函数,它用你放在括号之间的任何参数替换内部html,在这种情况下是'Hello World'。
jQuery的.html()可用于设置和获取匹配的非空元素(innerHTML)的内容。
var contents = $(element).html();
$(element).html("insert content into element");
已经有答案给出了如何改变元素的内部HTML。
但是我建议,你应该使用一些像渐隐/渐隐这样的动画来改变HTML,这给了改变HTML的良好效果,而不是立即改变内部HTML。
使用动画来改变内部HTML
$('#regTitle').fadeOut(500, function() {
$(this).html('Hello World!').fadeIn(500);
});
如果你有很多函数需要这个,那么你可以调用通用函数来改变Html内部。
function changeInnerHtml(elementPath, newText){
$(elementPath).fadeOut(500, function() {
$(this).html(newText).fadeIn(500);
});
}