请教一个动态ID的设置和JS获取动态ID的问题,具体详情请往下看,非常感谢啊!!谢谢了!!谢谢了!!!是这样的,我做了一个视频转载到页面的功能,视频代码如下:
<embed id="shipin" src="http://优酷土豆.swf" quality="high" width="540" height="450" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash"></embed>该代码之下有一个图片按钮“点击宽屏播放”,点击后用JS来重新设置宽屏,图片代码如下:
<img style="cursor:hand" onclick="shezhikuanping()" src="../img/kuananniu.gif" alt="趣我花缘宽屏高清模式播放" />页面最底部</body>之上有“关闭宽屏播放”的按钮,代码如下:
<div id="guanbikuanping" style="position:absolute;right:0;top:10px;width:20px;font-size:14px;text-align:center;display:none;">
    本网站开发宽屏播放模式,只为要你好看<br/><br/>
    <img style="cursor:hand" onclick="guanbikuanping()" src="../img/gbkpgq.gif" alt="关闭宽屏高清" />
</div>点击“点击宽屏播放”的时候,JS代码如下:
function kuanshipinmoshi()  //宽视频模式时,即用JS代码定义宽屏播放的宽度和高度,隐藏横纵向滚动条
{
   var sw=window.screen.availWidth;   //视频宽,整个显示屏的宽度
   var sh=document.documentElement.clientHeight;  //视频高,浏览器窗口的可用高度,不是网页整个高度,而是浏览器窗口的可视高度(不包括浏览器头部)
   document.getElementById("shipin").width=(sw-25)+"px";  //减去30像素,是为了要给关闭DIV留出空间
   document.getElementById("shipin").height=(sh+10)+"px";  //加上10像素,是为增加视频的高度,可以隐去小部分视频底部操作栏空间,同时也不会影响操作   
   document.getElementById("shipin").style.position="absolute";  //视频设为绝对定位
   document.getElementById("shipin").style.top="0";
   document.getElementById("shipin").style.left="0";
   document.getElementById("guanbikuanping").style.display="block";  //显示关闭高清按钮
   this.scroll(0,0);   //设置横纵向滚动条的坐标
   document.getElementById("html1").style.overflowX="hidden";  //遮罩时消除横向滚动条
   document.getElementById("html1").style.overflowY="hidden";  //遮罩时消除纵向滚动条
}           点击“关闭宽屏播放”时候,JS代码如下:
function guanbikuanping()  //关闭宽视频模式
{
   document.getElementById("shipin").width="540px";              //还原原来的宽度
   document.getElementById("shipin").height="450px";             //还原原来的高度
   document.getElementById("shipin").style.position="relative";  //原来原来相对定位的位置
   document.getElementById("guanbikuanping").style.display="none";   //关闭高清模式的按钮DIV
   document.getElementById("html1").style.overflowX="auto";          //横向滚动条可用
   document.getElementById("html1").style.overflowY="auto";          //纵向滚动条可用
   window.location.href="#shipin";  //让页面回到原视频的位置
}在页面只有一个视频的情况下,测试就是完全正常的,但是如果页面上不止一个视频的话,测试就不正常了,打开和关闭仅对页面上第一个视频有效。比如说,我点击第二个视频之下的“点击宽屏播放”,它就会让第一个视频成为宽屏充满整个浏览器可用区域。
问题是视频往往不止一个呀,一个帖子正文可能会有一两个视频,如果有五六楼回帖,每一楼都有一两个视频的话,应该怎么解决呢?我想应该是动态ID吧,但是要怎样设置动态ID呢,JS又怎么获取动态ID呢?
请各位大侠帮一把,谢谢了,3Q

解决方案 »

  1.   

    不好意思,倒数第二段的JS代码的名称弄错了,应该是shezhikuanping()谢谢!
      

  2.   

    <embed id="shipin<%#Eval("id")%>" src="http://<%#Eval("swfUrl")%>" quality="high" width="540" height="450" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash"></embed>
    <img style="cursor:hand" onclick="shezhikuanping(this)" src="../img/kuananniu.gif" alt="趣我花缘宽屏高清模式播放" />funtion shezhikuanping(obj)
    {
    var id=documentByelementID(obj);
    }
    大体这样。剩下的只要把点击ID穿进去JS里面即可
      

  3.   

    二楼的哥们,感谢你的帮助,问题是视频并没有单独写入数据库的呀,怎么绑定呢?
    用户提交的视频地址“优酷土豆.swf”是和文字内容混在一起的,只是用来作标记
    写入库中content字段的内容如【给大家推荐一个很牛的视频哈,http://优酷土豆.swf,如果感觉好一定要顶我哟】
    我在输出到页面的时候,用相应的HTML代码来对作替换。在线等高手,谢谢了!
      

  4.   

    var swfVersionStr = "11.0.0";
    var xiSwfUrlStr = "/process/images/ToothDesc.swf";
    var flashvars = {};
    var params = {};
    params.quality = "high";
    params.bgcolor = "#F3F7F9";
    params.allowscriptaccess = "sameDomain";
    params.allowfullscreen = "true";
    var attributes = {};
    attributes.id = "ToothDesc";
    attributes.name = "ToothDesc";
    attributes.align = "middle";
    swfobject.embedSWF(
    "/process/images/ToothDesc.swf", "flashContent", 
    "100%", "320", 
    swfVersionStr, xiSwfUrlStr, 
    flashvars, params, attributes);
    swfobject.createCSS("#flashContent", "display:block;text-align:left;");这个还会获取id呀 我怎么感觉获取不到也