2

我在 HTML 页面中有一个基于 Flash 的SWFUpload上传按钮。

我正在尝试设置该按钮的样式。SWFUpload 为 Flash 按钮的设置提供了一个 Javascript 设置界面。我自己没有 Flash,所以我必须使用预编译的 SWF 文件。

   ..... 
   button_width: "100",
   button_height: "20",
   button_placeholder_id: "spanButtonPlaceHolder",
   button_text: '<span class="theFont">Upload</span>',
   button_text_style: ".theFont { font-size: 18; font-family: Verdana; color: #FFFFFF; }",
   button_text_left_padding
   .... 

现在,我希望按钮适合它所在的 HTML 元素的背景颜色。我不在乎我是通过透明度还是通过给闪光灯按钮一个颜色来实现这一点。但是 SWFUpload 2.20 已经没有指定背景颜色的设置了,我也不想使用指定颜色的背景图片。

我试过

   button_window_mode : SWFUpload.WINDOW_MODE.TRANSPARENT,

这给了我一个透明的按钮,但它不再对点击事件做出反应。甚至当我单击文本的微小白色像素时也不会。

我试着给它一个透明的背景图片:

    button_image_url : "$swfupload_widget_webroot/images/transparent.png", // 1x1 Pixel 
    button_image_width: 100, 
    button_image_height: 20,

但无济于事。

有人知道该怎么做吗?

为什么设置为时电影不再处理点击transparent

我正在 Windows 7 上的 Firefox 3.5 上进行测试。

4

2 回答 2

2

透明和不透明等窗口模式因其造成的奇怪输入错误而臭名昭著。尽可能远离它绝对是个好主意。

我没有使用过 SWFUpload,所以我不完全确定它是如何嵌入 SWF 文件的。但不管具体情况如何,最后我确定它使用的是嵌入/对象标签,对于那些,有一个bgcolor参数可以覆盖 SWF 文件中指定的背景颜色。我建议看看这个参数(向下滚动)

SWFObject 是使用 javascript 动态嵌入 SWF 文件的常用方法。如果这是 SWFUpload 使用的,您应该能够应用以下原则来设置 bgcolor 参数:

var params = {
  bgcolor: #ffcc00,
};

swfobject.embedSWF("myContent.swf", "myContent", "300", "120", "9.0.0",
  "expressInstall.swf", {}, params, {});

正如我所说,我不确定 SWFUpload 接口是什么样的,但关键是找到一种方法来指定嵌入参数。希望这至少会推动你朝着正确的方向前进!

于 2010-01-01T18:08:05.727 回答
2

我注意到使用 mode=transparent 或 mode=opaque 时,闪光灯看到的是鼠标而不是点击。所以在Flash文件中我改变了按钮动作

在(释放){

上(翻转){

你不知道吗,它有效。这有点古怪,因为人们无论如何都会点击它,并且必须将鼠标从按钮上移开才能再次“点击”它。但这总比因为客户想要一个 Flash 横幅而不得不重新设计整个主页菜单要好。当然,如果您没有能力编辑 Flash 文件本身,那么很遗憾,这将无济于事。

于 2011-10-30T01:24:44.627 回答