1
  echo'<img src="'.$row['filename'].'" onmouseover="this.src='.$row['back_filename'].'" onmouseout="this.src='.$row['filename'].'" />';

我正在使用 mySql 和 php 从数据库中调用 2 张图像,为什么这个 onmousover 不起作用?附言。我正在调用图像的路径,而不是将图像存储在数据库本身中。

4

2 回答 2

3

尝试这个

echo'<img src="'.$row['filename'].'" onmouseover="this.src=\''.$row['back_filename'].'\'" onmouseout="this.src=\''.$row['filename'].'\'" />';
于 2013-10-05T04:13:02.430 回答
1

您没有为内联 javascript 提供所需的引号,您需要''在文件名周围加上单引号,因为它是一个字符串,导致任何变量都被 javascript 解释为与您期望的不同的东西。

还可以使用heredoc来帮助防止错误引用和担心转义引号引起的错误。

echo <<<END
   <img src="{$row['filename']}" onmouseover="this.src='{$row['back_filename']}'" onmouseout="this.src='{$row['filename']}'" />
END;
于 2013-10-05T04:21:23.597 回答