我只想用函数更改href中的字体颜色。但我似乎对引用令人不安。
这是我的代码:
<script>
<?php foreach($locations AS $loc) { //you could replace this with your while loop query ?>
var x = '<?php echo $loc['tgl'];?>';
addMarker(<?php echo $loc["lat"]; ?>, <?php echo $loc["ltd"]; ?> ,'<?php echo $loc["order"]; ?>',x );
document.getElementById('left').innerHTML += "<?php echo "<li><a href='#' id='".$loc['order']."' onClick='changeColor('".$loc['order']."');return false;'>".$loc["order"]."</a></li>";?>";
<?php } ?>
</script>
这就是功能:
<script>
function changeColor(id)
{
document.getElementById(id).style.color = "#1FFF48"; // forecolor
}
</script>
我只在HTML中尝试过它并且它成功了。但在javascript里面我很困惑。有什么帮助吗?
答案 0 :(得分:1)
像这样使用它会起作用
<?php $order="onClick=changeColor('".$loc['order']."');return false;"; ?>
document.getElementById('left').innerHTML += "<?php echo "<li><a href='#' id='".$loc['order']."' $order >".$loc["order"]."</a></li>";?>";
答案 1 :(得分:0)
生成代码后,它看起来像
<li><a href='#' id='order1' onClick='changeColor("order1");return false;'>Order1</a></li>
<li><a href='#' id='order2' onClick='changeColor("order2");return false;'>Order2</a></li>
检查你的身份
function changeColor(id)
{
alert(id);
document.getElementById(id).style.color = "#1FFF48"; // forecolor
}
答案 2 :(得分:0)
与kim的答案相同,但尝试在脚本标记内使用 eventlistener 。这有效!!
HTML
<li><a href='#' id='order1'>Order1</a></li>
<li><a href='#' id='order2'>Order2</a></li>
脚本
<script>
document.getElementById("order1").addEventListener("click",changeColor);
document.getElementById("order2").addEventListener("click",changeColor);
function changeColor() {
this.style.color = "#cecece";
return false;
}
</script>