【发布时间】:2013-04-09 06:21:02
【问题描述】:
所以我做了相当多的研究,但仍然没有让这个工作。我正在尝试替换 div 的 innerhtml。我已成功使用以下代码:
<script type="text/javascript">
var embedCode = 'new html goes here';
</script>
<div id="videocontainer">
<img class="playButton" onclick="document.getElementById(videocontainer).innerHTML = embedCode;return false;" src=""/>
</div>
这基本上是一个帖子模板,我将复制和粘贴它,只更改图像/嵌入代码。如果我只有 1 个帖子,所有工作都有效。但是一旦我添加另一个帖子,两者都将无法工作,因为它们都共享相同的 embedCod 名称和相同的 div id。有没有不使用 jQuery 的解决方案?
我尝试过使用
document.getElementById(this.id).innerHTML = embedCode
而不是
document.getElementById(videocontainer).innerHTML = embedCode
但它仍然无法正常工作。谢谢。
【问题讨论】:
-
id应该是唯一的。只需增加一个计数器或使用帖子 ID 作为id属性的一部分。 -
也许用引号
document.getElementById("videocontainer").innerHTML = //etc -
@MarkParnell - 如果我要使用帖子 ID 作为 id 属性的一部分,那么我将如何更改每个 id 的 css?我是否应该像这样将 css 添加到行中,这样我就可以在博客继续增长时复制和粘贴相同的文本?所以我正在尝试使用 Mark 的建议,但我现在遇到了一个 css 问题。每个帖子的图像 css 必须相同。我目前在我的 CSS 中使用 #divID .imageClass {style}。由于 divID 现在是动态的,我所有的图像 css 将不再工作。有没有比为每个帖子动态制作样式表更简单的方法?没人有其他解决方案吗?