【问题标题】:How to onmouseover swap image in php?如何在 php 中通过鼠标悬停交换图像?
【发布时间】:2015-05-06 21:15:26
【问题描述】:
我的 wordpress 模板中有这段代码
<a onclick="get_project_data(<?php echo get_the_ID(); ?>)"><img src="<?php echo wp_get_attachment_url( $logoimg_id ); ?>" onmouseover="this.src=\'<?php echo wp_get_attachment_url( $logoimg_id+b ); ?>';" onmouseout="this.src=\'<?php echo wp_get_attachment_url( $logoimg_id ); ?>';"/></a>
但这不起作用,我需要显示全彩色图像和黑白图像,问题是我需要自动执行此操作,因此我将上传到我的服务器 photo.jpg 和 photob。 jpg(黑白)css 不是一个选项。
谢谢
【问题讨论】:
标签:
php
wordpress
image
onmouseover
【解决方案1】:
首先,您没有正确连接字符串。
$logoimg_id+'b' (notice the quotes)
其次,您需要在扩展名之前添加“b”。你可以这样做
$imgPath = wp_get_attachment_url( $logoimg_id );
$tmp = explode('.', $imgPath);
$tmp[0].='b';
$imgPath = implode('.',$tmp);
另一种方法是做一个
echo str_replace('.jpg', 'b.jpg', wp_get_attachment_url( $logoimg_id ));
但我不建议这样做
【解决方案2】:
您已经在“this.src”定义的开头转义了单引号,但没有在结尾处转义。不需要转义。
例如。
onmouseover="this.src=\'<php
echo wp_get_attachment_url($logoimg_id+b);?>';"
应该是:
onmouseover="this.src='<php
echo wp_get_attachment_url($logoimg_id+b);?>';"