Javascript 嵌套元素创建不起作用?
正在尝试在元素中创建元素。这里是一个锚定标签内的img。 我使用的是append-child,但注销时的“userlogelement”只是img标记,锚点是空的锚点标记。为什么什么都没发生Javascript 嵌套元素创建不起作用?,javascript,html,Javascript,Html,正在尝试在元素中创建元素。这里是一个锚定标签内的img。 我使用的是append-child,但注销时的“userlogelement”只是img标记,锚点是空的锚点标记。为什么什么都没发生 var anchor = document.createElement('a'); anchor.href = var0; //---- Create image element ---- var img = document.
var anchor = document.createElement('a');
anchor.href = var0;
//---- Create image element ----
var img = document.createElement('img');
img.src = var1;
img.title = var2;
//---- Combine elements ----
var userLogoElement = anchor.appendChild(img);
console.log(userLogoElement, anchor, img);
//console says img === userLogoElement, anchor is empty
代码运行良好
请注意,返回对附加的节点的引用,而不是附加到的节点。这就是为什么userlogelement
是图像而不是锚定
另请注意:在Firebug中,日志仅显示父锚点,在控制台日志中不包括其子锚点。另一方面,铬确实显示了这一点。一种简单的测试方法是将其附加到文档中,然后自己查看(就像在小提琴中一样)。采用jquery短编码风格
$("")
.attr('href','www.pranaysonisoft.blogspot.com')
.append($)我运行了以下代码:
<script type="text/javascript">
var0="www.google.com";
var1="bee.jpg";
var2="Don Bee";
var anchor = document.createElement('a');
anchor.href = var0;
//---- Create image element ----
var img = document.createElement('img');
img.src = var1;
img.title = var2;
//---- Combine elements ----
var userLogoElement = anchor.appendChild(img);
console.log(userLogoElement);
console.log ("next");
console.log(anchor);
console.log("next");
console.log(img);
</script>
var0=“www.google.com”;
var1=“bee.jpg”;
var2=“Don Bee”;
var anchor=document.createElement('a');
anchor.href=var0;
//----创建图像元素----
var img=document.createElement('img');
img.src=var1;
img.title=var2;
//----组合元素----
var userLogoElement=anchor.appendChild(img);
log(userLogoElement);
console.log(“下一步”);
控制台日志(锚);
控制台日志(“下一步”);
控制台日志(img);
我有以下输出
userLogoElement:
img src=“bee.jpg”title=“Don bee”
主播:
a href=“www.google.com”img src=“bee.jpg”title=“Don bee”/a
这似乎工作正常。userLogoElement的返回值不是你的锚appendChild返回IMO是件奇怪的事情。我不得不在findelelement(无论什么).html(锚)中使用锚而不是userLogoElement
您可能会争辩说,返回节点会比执行方法链接更好。这一点很好!我对其工作方式的最初假设影响了我命名和传递变量的方式。
<script type="text/javascript">
var0="www.google.com";
var1="bee.jpg";
var2="Don Bee";
var anchor = document.createElement('a');
anchor.href = var0;
//---- Create image element ----
var img = document.createElement('img');
img.src = var1;
img.title = var2;
//---- Combine elements ----
var userLogoElement = anchor.appendChild(img);
console.log(userLogoElement);
console.log ("next");
console.log(anchor);
console.log("next");
console.log(img);
</script>