Html 在嵌入式闪存文件周围添加链接

Html 在嵌入式闪存文件周围添加链接,html,css,flash,clicktag,Html,Css,Flash,Clicktag,我希望这样,当我点击嵌入的Flash元素的任何地方时,它会将我带到一个目标URL 以下是我当前的代码,它不能产生预期的效果: <div class="contentdiv" style="margin:-72px 0 10px 0px; cursor:pointer;" onclick="location.href='http://example.com/';"> <object height="410" width="720"> <param name="mov

我希望这样,当我点击嵌入的Flash元素的任何地方时,它会将我带到一个目标URL

以下是我当前的代码,它不能产生预期的效果:

<div class="contentdiv" style="margin:-72px 0 10px 0px; cursor:pointer;" onclick="location.href='http://example.com/';">

<object height="410" width="720">
<param name="movie" value="images/tri.swf">
<embed src="images/tri.swf" height="400" width="700"> 
</embed>
</object>

</div>

现在,它使.swf文件后面的空间可以点击链接,但Flash元素是不可点击的

如果正确的做法是以某种方式编辑.swf文件,请让我知道。我不认为自己是一个Flash开发人员,但是有什么资源可以在哪里启动或者如何用现有的SWF文件?
任何建议都将不胜感激

更多研究后更新:

这个问题以前有人问过,关键是你必须在flash中创建链接

通常,通过将参数(通常称为clickTAG)传递到.swf来告诉它链接到哪里,可以动态地完成此操作

在您的情况下(因为其他人提供了您的swf文件),我可以看到两个选项:

  • 您的.swf作者可能已经实现了(您可以询问他们,或者在.swf上尝试一下,看看它是否有效。)
  • 您可以制作一个实现clickTag的flash包装文件,并让它加载和显示您的.swf文件。我知道这似乎是一个黑客,但我看不到任何其他选择
  • 希望这有帮助


    我也见过类似的东西被使用过[编辑:但我不能让它工作!谷歌搜索表明这是不可能的]

    <a href="http://example.com/" target="_blank">
     <object height="410" width="720"><param name="movie" value="images/tri.swf">
     <embed src="images/tri.swf" height="400" width="700"></embed>
     </object>
    </a>
    
    
    

    (例如)

    使用z-index在flash上放置一个透明的.gif或.png文件,然后用URL锚定该透明图像

    我也遇到了同样的问题,找到了这个线程,但最终创建了自己的解决方案

    我将透明元素添加到链接中,然后使其与嵌入的swf重叠

    <a href="http://example.com/" target="_blank">
      <object height="410" width="720"><param name="movie" value="http://www.theslap.com/swf/slap_logo.swf">
        <embed src="http://www.theslap.com/swf/slap_logo.swf" height="400" width="700"></embed>
      </object>
      <i style="display:block; height: 410px; width: 720px;  position: relative; z-index: 9; margin-top: -410px;"></i>
    </a>
    
    
    

    注意-您可能应该将css包含在单独的生产代码文件中。

    您可以创建自己的swf(或让他人为您创建),该swf在舞台上方有一个可编辑的按钮,并在该按钮下方加载主题swf

    我已经为您创建了一个:

    嵌入时只需添加两个FlashVar:

  • url
    -单击swf时将访问的url
  • swf
    -要加载的swf文件
  • 
    
    当然可以
    在所有情况下都消除了问题

    我非常想解决这个问题。。。。我尝试了几个技巧,包括jquery和javascript

    当然,在所有浏览器中都有效的解决方案就是我上面的回答

    感谢用户user2628529

                <div class="containe">
                  <div  style="position:absolute;"> <a href="http://www.sample.com" target="_blank" > <img src="http://www.sample.it/banner/trasparent-190-505.png"> </a> </div>
                  <div >
                    <object type='application/x-shockwave-flash' data='http://www.sample.it/banner/banner-one.swf' width='190' height='505'>
                      <param name='flashvars' value='clickTag=&clickTarget=_self' />
                      <param name='allowScriptAccess' value='always' />
                      <param name='movie' value='banner-one.swf' />
                      <param name='wmode' value='transparent' >
                    </object>
                  </div>
                </div>
    

    我找到了一个最好的方法

    <div class="flash-wrap">
       <a class="flash-link" href="#"></a>
       <object type="application/x-shockwave-flash" data="flash.swf" width="180" height="220">
          <param name="wmode" value="opaque">
          <param name="movie" value="flash.swf" />
          <param name="quality" value="high" />
       </object>
    </div>
    
    这对我很有效:

    <a target="_blank" href="{{ entity.link }}">
        <object type="application/x-shockwave-flash" data="{{ entity.file.path }}?clickTAG={{ entity.link }}" width="120" height="600" style="visibility: visible;">
            <param name="quality" value="high">
            <param name="play" value="true">
            <param name="LOOP" value="false">
            <param name="wmode" value="transparent">
            <param name="allowScriptAccess" value="true">
        </object>
    </a>
    
    
    
    谢谢! 现在。它起作用了

        <div style="width: 400px; height: 100px;">
        <a href="http://www.sample.com" target="_blank">
        <object height="100" width="400"><param name="movie" value="1.swf">
          <embed src="1.swf" quality="high" type="application/x-shockwave-flash" wmode="transparent" width="400" height="100" pluginspage="http://www.macromedia.com/go/getflashplayer" allowScriptAccess="always"></embed>
        </object>  
          <i style="display: block; height: 100px; width: 400px; position: relative;z-index: 9;margin-top: -102px;"></i>
        </a>
    </div>
    

    您不能将链接添加到flash对象,但您可以将透明图像与链接重叠在flash对象上。 这是我的例子:

        <div style="position: relative;">
            <div style="position: absolute;
            left: 250px;
            top: 0px;
            z-index: 9999;">
                <a href="http://terrazasmedicina.com.ar/hometerrazas.html">
    <img src="logoLinkTR.png" width="504" height="103"></a>
            </div>
            <script type="text/javascript">
        AC_FL_RunContent( 'codebase','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0','width','1024','height','106','src','banner','quality','high','pluginspage','http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash','movie','banner' ); //end AC code
        </script></div>
    
    
    AC_FL_RunContent('codebase','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0','width','1024','height','106','src','banner','quality','high','pluginspage','http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash","电影","旗帜",//结束AC代码
    
    在我的例子中,对象由脚本嵌入,但其工作原理应该相同。

    您必须将对象和带有图像的div包裹在相对div中,然后将div定位为绝对值,与图像通过左、上、右和下属性对齐,并启用z-index属性以重叠图像。

    我尝试实现此功能,但没有成功。此外,您的链接会转到一个与此主题无关的论坛页面。该链接指向一个带有flash横幅广告的页面:查看页面来源,了解他们是如何做到这一点的!好的,我看了源代码,因为他们建立这个例子的方式,所以有点不清楚。它们在flash元素周围有标签,后面有文本。不清楚该标记是否启用了flash元素的链接。例如,可能是因为标签,也可能是因为flash swf文件的构造方式。在任何情况下,正如我在第一篇评论中所解释的那样,我尝试用一个简单的标记来实现这一点,正如您所描述的,但它不起作用。我认为这不是合适的解决办法。你是对的,我也不能让它工作!也许这两种方法都不起作用是有原因的,比如用于嵌入swf的参数之一?我会做更多的挖掘…谢谢,这有助于我找到我们需要去的地方。谢谢,这是我做的,除了我用了
    div
    而不是
    I
    标记,我在样式标记中用了
    top
    而不是
    margin top
    。似乎正是我所需要的。再次感谢。我还必须通过在对象标记
    和嵌入标记的属性
    wmode=“opaque”
    中添加此项,将Flash模式从窗口更改为不透明。您不需要png。一个简单的空div(具有相同的维度)也适用于我。不过还是要谢谢你!
        <div style="width: 400px; height: 100px;">
        <a href="http://www.sample.com" target="_blank">
        <object height="100" width="400"><param name="movie" value="1.swf">
          <embed src="1.swf" quality="high" type="application/x-shockwave-flash" wmode="transparent" width="400" height="100" pluginspage="http://www.macromedia.com/go/getflashplayer" allowScriptAccess="always"></embed>
        </object>  
          <i style="display: block; height: 100px; width: 400px; position: relative;z-index: 9;margin-top: -102px;"></i>
        </a>
    </div>
    
        <div style="position: relative;">
            <div style="position: absolute;
            left: 250px;
            top: 0px;
            z-index: 9999;">
                <a href="http://terrazasmedicina.com.ar/hometerrazas.html">
    <img src="logoLinkTR.png" width="504" height="103"></a>
            </div>
            <script type="text/javascript">
        AC_FL_RunContent( 'codebase','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0','width','1024','height','106','src','banner','quality','high','pluginspage','http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash','movie','banner' ); //end AC code
        </script></div>