Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/82.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
GIF';在Google Chrome中加载了JavaScript而没有设置动画_Javascript_Html_Ruby On Rails_Google Chrome_Firefox - Fatal编程技术网

GIF';在Google Chrome中加载了JavaScript而没有设置动画

GIF';在Google Chrome中加载了JavaScript而没有设置动画,javascript,html,ruby-on-rails,google-chrome,firefox,Javascript,Html,Ruby On Rails,Google Chrome,Firefox,我正在为一个ruby项目开发一个页面,该项目允许用户从web UI一次运行多个shell脚本。整个页面由两个输入表单和一组复选框组成,用于运行脚本。在每个复选框旁边,都有一个标签和一个状态图像(未触及[non-animated gif]、加载[gif]、成功[png]、失败[png])。我一直在Firefox51上测试,没有任何问题。但当我尝试在谷歌浏览器中使用该页面时,图像加载良好,但加载的gif实际上没有动画。方法是使用JavaScript替换字段中的图像 HTML <div clas

我正在为一个ruby项目开发一个页面,该项目允许用户从web UI一次运行多个shell脚本。整个页面由两个输入表单和一组复选框组成,用于运行脚本。在每个复选框旁边,都有一个标签和一个状态图像(未触及[non-animated gif]、加载[gif]、成功[png]、失败[png])。我一直在Firefox51上测试,没有任何问题。但当我尝试在谷歌浏览器中使用该页面时,图像加载良好,但加载的gif实际上没有动画。方法是使用JavaScript替换字段中的图像

HTML

<div class="span3">
  <%= check_box_tag(:mail_harvest, 1, false) %>
  <%= label_tag(:mail_harvest, "Mail Harvest (Google + AdobeLeaks)", :class => "checkbox inline") %>
    <img src="/assets/project/wait.gif" id="mail_harvest_img" style="width:16px; height:16px; float:right;"></img>
  <br />
  <%= check_box_tag(:file_harvest, 1, false) %>
  <%= label_tag(:file_harvest, "File Harvest", :class => "checkbox inline") %>
  <img src="/assets/project/wait.gif" id="file_harvest_img" style="width:16px; height:16px; float:right;"></img>
  <br />
...
</div>
<div class="span3">
  <%= check_box_tag(:mail_harvest, 1, false) %>
  <%= label_tag(:mail_harvest, "Mail Harvest (Google + AdobeLeaks)", :class => "checkbox inline") %>
  <%= image_tag("project/wait.gif", :id => "mail_harvest_wait_img") %>
  <%= image_tag("project/loading.gif", :id => "mail_harvest_loading_img", :class => "hidden") %>
  <%= image_tag("project/Check16.png", :id => "mail_harvest_check_img", :class => "hidden") %>
  <%= image_tag("project/X16.png", :id => "mail_harvest_x_img", :class => "hidden") %>
  <br />
...
</div>
基本上,当您单击submit按钮时,页面不会重新加载,但所选每个工具的图像将替换为“加载”gif,并且当ajax调用成功或失败时,图像将更改为选中标记或x。这在Firefox中运行得非常好,在Chrome中(成功或失败时都会显示复选框或x),除了加载gif外,大部分情况下都很好。这是浏览器的问题,还是我的代码中遗漏了什么


提前感谢,感谢您的帮助

我通过改变处理照片的方式解决了这个问题。我没有不断地更改图像标记的来源,而是选择在页面加载时将所有图像一起加载,加载、复选标记和x都隐藏起来。当我需要更改图像时,我使用jQuery根据需要隐藏和显示图像

HTML

<div class="span3">
  <%= check_box_tag(:mail_harvest, 1, false) %>
  <%= label_tag(:mail_harvest, "Mail Harvest (Google + AdobeLeaks)", :class => "checkbox inline") %>
    <img src="/assets/project/wait.gif" id="mail_harvest_img" style="width:16px; height:16px; float:right;"></img>
  <br />
  <%= check_box_tag(:file_harvest, 1, false) %>
  <%= label_tag(:file_harvest, "File Harvest", :class => "checkbox inline") %>
  <img src="/assets/project/wait.gif" id="file_harvest_img" style="width:16px; height:16px; float:right;"></img>
  <br />
...
</div>
<div class="span3">
  <%= check_box_tag(:mail_harvest, 1, false) %>
  <%= label_tag(:mail_harvest, "Mail Harvest (Google + AdobeLeaks)", :class => "checkbox inline") %>
  <%= image_tag("project/wait.gif", :id => "mail_harvest_wait_img") %>
  <%= image_tag("project/loading.gif", :id => "mail_harvest_loading_img", :class => "hidden") %>
  <%= image_tag("project/Check16.png", :id => "mail_harvest_check_img", :class => "hidden") %>
  <%= image_tag("project/X16.png", :id => "mail_harvest_x_img", :class => "hidden") %>
  <br />
...
</div>