使用 show 和 hide 方法时停止重新加载 flash 文件 [英] Stop reloading flash file when using show and hide methods

查看:15
本文介绍了使用 show 和 hide 方法时停止重新加载 flash 文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个网页,其中嵌入了一个 Flash 文件.Flash 文件有一个由 4 个问题组成的测验.当用户回答第一个问题时,将显示第二个问题.此 Flash 嵌入到一个名为的 div 中divFlashcontent.Now 我想隐藏和显示中间的测验.例如:当用户单击按钮(暂停")时,我想隐藏测验.当他点击继续"按钮时,我想继续(显示)测验.我为此使用 jquery show() 方法和 hide 方法.但问题是,当我调用 show 方法时,Flash 内容正在再次加载(从一开始就显示测验).它没有显示我们单击暂停按钮的阶段.我该如何解决这个问题?我希望 Flash 处于隐藏状态

I have a web page where a flash file is embeded in that.The flash file is having a quiz consist of 4 questions.When user answer the first question the second question will be shown.This flash is embeded in a div called divFlashcontent.Now i want to hide and show the quiz inbetween.Ex: When the user clicks a button("Pause"), i want to hide quiz. and when he clicks "Continue" button, i want to continue (show ) the quiz. I am using jquery show() method and hide method for this. But the problem is ,When i call the show method the flash content is being loaded again(Showing the quiz from the start).It is not showing the stage where we clicked the pause buttton. How can i solve this ? I want flash to be in the same stage where its become hidden

推荐答案

内部 $.hide() 方法在您的元素上执行 css: display:none;.这将导致闪光灯每次重新加载.我建议以不同的方式隐藏你的 flash,因为它对这个 css 属性的反应很差.

The internal $.hide() method does a css: display:none; on your element. This will cause the flash to reload each time. I would suggest hiding your flash a different way, since it reacts poorly to this css property.

这是一个插件,它通过将元素定位在屏幕之外来隐藏您的元素.这并非在所有情况下都适用,但如果适用于您,则非常有用.

Here is a plugin that hides your element by positioning it off of the screen. This doesn't work in all cases, but can be very useful if it applies to you.

要添加的 CSS:

.flashHide {
  position:absolute;
  left:-99999px;
}

以及要添加的插件:

(function($){ 
  var hideClassName = 'flashHide'; 
  $.fn.extend({ 
    flashHide: function() { 
      return this.each(function(){ 
        $(this).addClass(hideClassName); 
      }); 
    }, 
    flashShow: function() { 
      return this.each(function(){ 
        $(this).removeClass(hideClassName); 
      }); 
    } 
  }); 
})(jQuery);

然后你会像这样使用它:

Then you would use it like this:

$('div#flashContainer').flashHide();
$('div#flashContainer').flashShow();

这篇关于使用 show 和 hide 方法时停止重新加载 flash 文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆