Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript swapImage{src:‘;image2.jpg’;}不';在Rails 3.1中没有响应_Javascript_Jquery_Ruby On Rails_Ruby On Rails 3.1_Asset Pipeline - Fatal编程技术网

Javascript swapImage{src:‘;image2.jpg’;}不';在Rails 3.1中没有响应

Javascript swapImage{src:‘;image2.jpg’;}不';在Rails 3.1中没有响应,javascript,jquery,ruby-on-rails,ruby-on-rails-3.1,asset-pipeline,Javascript,Jquery,Ruby On Rails,Ruby On Rails 3.1,Asset Pipeline,我正在将我的Rails应用程序从2.3升级到3.2,但目前我仍停留在3.1上 我目前正在努力将对图像文件名的引用转换为一种适用于资产管道的语法。我需要帮助解决这个问题的主要地方是我的按钮翻转swapImage语句。下面是一个例子: <%= image_submit_tag "signin.jpg", {:class => "swapImage { src: '#{image_path('signinHover.jpg')}' }" %> “swapImage{src:'{im

我正在将我的Rails应用程序从2.3升级到3.2,但目前我仍停留在3.1上

我目前正在努力将对图像文件名的引用转换为一种适用于资产管道的语法。我需要帮助解决这个问题的主要地方是我的按钮翻转swapImage语句。下面是一个例子:

<%= image_submit_tag "signin.jpg", {:class => "swapImage { src: '#{image_path('signinHover.jpg')}' }" %>
“swapImage{src:'{image_path('signinHover.jpg')}}}”%%>
这在开发中起作用。但当我将此代码部署到生产环境中时,滚动仍然不起作用。我根本没有得到明显的翻车反应。此外,当我查看源代码时,单引号仍然显示为转义:

<input class="swapImage {src: &#x27;/assets/signinHover.jpg&#x27;}" src="/assets/signin.jpg" type="image" />

我猜这可能是我问题的一部分

我还想知道我是否没有使用资产管道正确加载javascript/jquery资产。但是当我检查时,我看到swapImage代码看起来很好

对于如何在Rails 3.1中正确地实现swapImage,以及资产管道提供的图像的正确语法,我非常感谢您的建议。或者,是否有更好的方法来翻转按钮图像,我应该用它来代替

非常感谢

迪安·理查森
genlighte.com

这里有两件事需要解决。 首先,在输入标记上有一个src属性。这两件事不能混为一谈。 您需要使用CSS设置输入的样式,或者在其中的某个位置放置一个图像元素来实现这一点

由于您希望具有悬停图像切换效果,我建议使用CSS精灵。一旦鼠标移到目标上,加载图像将破坏用户体验,因为在浏览器成功加载内容之前,您的按钮将完全消失

查看一千万个bajillion css sprites教程中的一个,比如这一个(我在谷歌上找到的第一个):

现在。如果您打算在标记本身中放置一个备用源,并在悬停时加载该源,我建议您将其放置在数据属性中:

<img class="swapImage" data-image-swap="{src: &#x27;/assets/signinHover.jpg&#x27;}" src="/assets/signin.jpg" />

注意这是一个图像标签,不是输入。您必须在其中的某个位置添加输入:/

你能发布你想要输出的代码吗?另外,最好包含swapImage()方法,这样我们就可以了解它了

同样,使用javascript来实现悬停效果是一种糟糕的做法。我强烈建议你和雪碧一起去


高度重视:

为什么要将看似json对象的对象放在css类中?这是一个非常奇怪的架构。rails应该在作为html输出发送之前在那里输出一个图像路径吗?