0

我在某处有错误,但我可以弄清楚。我有一个 mouseover.js 脚本,它应该在页面上创建一个很好的效果 - 在将鼠标悬停在图像上时,图像将从灰度切换到彩色版本。

该脚本在 header.php 中加载,如下所示:

<script src="<?php bloginfo( 'stylesheet_directory' );?>
    /js/mouseover.js" type="text/javascript"></script> 

完整的脚本在这里: http: //pastebin.com/yeBtedcg

这个脚本应该起作用的页面在这里: http: //www.capital-restaurants.com/web/menu(菜单图像应该都是灰度的,只有在鼠标悬停时才会显示颜色)。

我知道该脚本工作正常,因为我以前使用过它,但现在我似乎无法找出我缺少的东西。

4

2 回答 2

1

该页面是 www.domain.com 并且您的图像是从 domain.com 加载的,因此出于安全原因 canvas.getImageData 无法工作,请将您的图像更改为同一域。

于 2012-06-19T22:14:17.727 回答
0

mouseover.js 正在加载,所以你的问题不在于 WordPress 集成。但是,我想我会注意到,您并没有真正以 WordPress 插件的正确方式添加脚本。看看wp_enqueue_script

这是一个辅助函数:

function add_static_js_asset( $asset_name, $asset_path, $dependencies = false, $version = null, $in_footer = false ) {

        $dependencies = ( is_bool( $dependencies ) ) ? $dependencies : false;
        $version = ( !empty( $version ) ) ? $version : '0.1';
        $in_footer = ( is_bool( $in_footer ) ) ? $in_footer : false;

        if ( empty( $asset ) ) {
                return false;
        }                                                                                                      

        wp_enqueue_script( "{$asset_name}_script", $asset_path), $dependencies, $version, $in_footer );

}            
于 2012-06-19T22:07:35.043 回答