【问题标题】:How can I size a .swf to full screen with .js如何使用 .js 将 .swf 大小调整为全屏
【发布时间】:2011-09-20 01:38:25
【问题描述】:

我的应用程序是在 Flash Builder 中构建的。我想在 HTML 页面中嵌入一个小的 Flash 登录表单。登录表单处于代码的“登录”状态,宽/高几百像素。 “默认”状态设置为 100% 的高度和宽度。我有一个调整大小的功能,一旦登录收到适当的凭据就会执行。

private function resizeApplication():void {
            if(ExternalInterface.available) {
                ExternalInterface.call("resizeApplication");
            } 

调整大小的javascript是这样的:

function resizeApplication() {
  var app = document.getElementById('app');
  app.style.height = '100%';
  app.style.width = '100%';
  app.style.left = '0';
  app.style.top = '0';}

#app 是 div 并且在 body 中溢出设置为 auto。这工作得很好,除了我在底部附近留下了一些可见的网页部分。我希望能够调整网页大小以匹配 swf 或隐藏除 swf 之外的所有内容。我用 js 尝试了一些不同的东西,包括将底部属性设置为 0 并使用 document.body.clientHeight 的变体。

【问题讨论】:

  • flash元素是position: absolute;还是position: fixed;
  • 位置是绝对的

标签: javascript html css apache-flex dom


【解决方案1】:

你不能让它“全屏”,但你可以让它填满浏览器。 首先,app 元素的位置样式应预先设置为固定或绝对(取决于您的页面),因为从脚本中设置它会重新加载 flash 对象。

如果位置固定,然后使用这个:

app.style.top = '0';
app.style.left = '0px';
app.style.top = '0px';
app.style.right = '0px';
app.style.bottom = '0px';

这绝对是找出视口的位置和它的大小,然后移动和调整你的应用元素的大小。

http://www.softcomplex.com/docs/get_window_size_and_scrollbar_position.html

如果您只是从 ActipnScript 制作 flash 全屏,那对您来说不是更容易吗?

fscommand("fullscreen", "true"); // ActionScript 2
stage.displayState = StageDisplayState.FULL_SCREEN; // ActionScript 3

【讨论】:

  • 更改 position 会重新加载 SWF(至少在 Firefox 中)。
  • 他的问题没有提到任何关于此类需求的内容
  • 它是从 ExternalInterface 调用启动的,因此重新加载它没有意义。
【解决方案2】:

您必须手动设置 div 的高度才能始终如一地获得您正在寻找的效果。这与使背景图像始终填满屏幕的技巧相同。

类似这样的:

function resizeMain(){
$("#wrapper").height(window.innerHeight);
$("#background").height(window.innerHeight);
$("#background").width(window.innerWidth);
}
window.onresize = resizeMain;
$(document).ready(function(){resizeMain();});

【讨论】:

    【解决方案3】:

    为什么不简单地使用进入真正的全屏模式

    StageDisplayState.FULL_SCREEN 
    

    【讨论】:

      猜你喜欢
      • 2015-07-17
      • 2014-08-03
      • 1970-01-01
      • 2019-09-14
      • 1970-01-01
      • 2014-03-23
      • 2014-09-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多