我正在尝试更改其class = thisphotobox的div的背景颜色。 一切都应该在按下这个div内的图像后发生。 我做错了什么?我应该在这些onclick括号中添加什么? 这是图像:
echo '<div class="thisphotobox">
<img src="'.$numphotos['link'].'" alt="photo" class="photolink" onclick="clicked()">
</div>';
这就是功能:
function clicked(thisphotobox){
var div = document.getElementsByClassName("thisphotobox");
elements.style.backgroundColor="red";
}
我也在考虑如何在复选框中“检查”它。
答案 0 :(得分:0)
查看您的变量名称。您已将搜索结果设置为div
,但您尝试在elements
上设置背景。
此外,这个问题与PHP或MySQL无关。
答案 1 :(得分:0)
1)代替onclick="clicked()"
,写下onclick=clicked();
。
2)如果只有一个div,你应该尝试给它一个id
,而不是class
。如果您愿意,您仍然可以使用CSS来修改它。当然,getElementsByClassName
变为getElementById
。
3)在clicked()
中,您创建了一个名为div
的变量,但尝试更改未声明变量elements
的背景颜色。将其更改为div
,或将div
更改为elements
。
+1你对“像复选框一样检查”部分是什么意思?如果要存储单击图像(并更改背景颜色),则可以声明一个新变量(在clicked()
函数之外,以便可以从其他地方访问),默认为false,然后你可以从这个功能改变它:
variableName = true;
。这是实现它的最简单方法。