js 动态切换视频
如图所示,想要一个这样的效果,就是点击下面视频标题时,上面的视频跟着切换,但是要求页面不重新加载。
这里贴上部分代码供大家参考。
<li id="about_li6">
<h2 id="about_img6"><span>媒体中心</span><img src="data:images/about_hx.jpg" /></h2>
<div class="about_sub" id="about_content6">
<a href="javascript:void(0);" id="back"><img src="data:images/back.png" /><span>返回</span></a>
<h3>媒体中心</h3>
<h4>MEDIA</h4>
<div class="media_content">
<div class="media_windows" id="flv1">
<!---显示视频区域----> </div>
<div class="media_list_warp">
<div class="media_list_content" id="media_list_content">
<asp:Repeater runat="server" ID="rp_video">
<ItemTemplate>
<a href="javascript:void(0);" class='<%#Eval("Description") %>'><%#Display.Tool_CutString(Eval("Title"),25) %></a>
</ItemTemplate>
</asp:Repeater> </div>
</div>
</div>
</div>
</li>
上面代码是样式代码,上面是视频的显示区域,下面视频标题列表通过repeater来读取,我把读出来的视频地址绑定为a标签的class属性,是为了点击时获取该值。
function about_img6() {
$("#about_ul li").css("width", "146px");
$("#media_list_content ul li").css("width", "125px");
$("#about_ul li h2").fadeIn(500);
$("#about_ul li h2 span,#about_ul li h2 img").hide();
$("#about_ul li .about_sub").hide();
$("#about_ul").animate({ "width": "1045px" });
$("#about_li1,#about_li2,#about_li3,#about_li4,#about_li5,#about_li7").animate({ "width": "90px" });
$("#about_li6").animate({ "width": "505px" });
$("#about_content6").show();
$("#about_img6").hide();
var srclist = document.getElementById("media_list_content");
var firsrc = srclist.getElementsByTagName("a")[0].className;
//默认加载第一个视频
setvideo(firsrc);
};
$("#media_list_content a").click(function () {
setvideo($(this).attr("class"));
});
///切换视频方法
function setvideo(url) {
var youku = document.getElementById("flv1");
var htmlstr = "<object id='obx' name='obx' width='395' height='290'>";
htmlstr += "<param name='movie' value='" + url + "'></param>";
htmlstr += "<param name='allowFullScreen' value='true'></param>";
htmlstr += "<param name='allowscriptaccess' value='always'></param>";
htmlstr += "<param name='wmode' value='opaque'></param>";
htmlstr += "<embed src='" + url + "' type='application/x-shockwave-flash' allowscriptaccess='always' allowfullscreen='true' wmode='opaque' width='395' height='290'></embed>";
htmlstr += "</object>";
youku.innerHTML = "";
youku.innerHTML = htmlstr;
};
此代码是js代码,当点击展开媒体中心时,先获取下面视频标题列表中的第一个a标签中的class属性中的视频地址,然后调用显示视频方法setvideo(url),把获取的地址传过去,然后在页面上打印出object和embed标签,两个标签一起使用的目的是为了兼容各浏览器。
当视频标题被点击时,通过attr来获取当前被点击的a标签的class的值,再调用setvideo(url)方法来在页面上显示相应的视频。
不敢私藏,拿出来与大家分享。
js 动态切换视频的更多相关文章
- vue使用 video.js动态切换视频源视频源不刷新问题
网上的垃圾代码太多,最后翻了video.js的官方文档,就这么简单,浪费了我这么久,注:我这里使用的vue //html <video id="my-player" con ...
- HTML页面嵌入视频和JS控制切换视频的问题
文章摘自:http://www.cnblogs.com/jorton/archive/2012/03/19/vidio_in_site.html 首先,在页面中嵌入视频的HTML代码为: 1 < ...
- js动态切换图片
<script language =javascript > $(function () { initAds(); }); function initAds() { var curInde ...
- ie6,7下js动态加载图片不显示错误
ie6,7下js动态加载图片不显示错误 先描述一下出现这种匪夷所思bug的背景: 我在页面加载的时候加载一堆小缩略图,<a href="javascript:void(0);" ...
- js动态改变css伪类样式
首先我们来看下页面上需要实现的基本效果,如下图所示: 因此我们可以使用如下js代码来试试看,是否能使用js改变伪类?如下代码所示: $(function() { $('.listnav li').cl ...
- ionic动态切换主题皮肤
本来想通过css自定义属性值: :root{ --red:red; } p{ color:var(--red); } div{ background:var(--red); } 在ionic2设置动态 ...
- react将表格动态生成视频列表【代码】【案例】
只需要创建一个表格,id为videos,react就能将这个表格转换成视频列表,并点击自动播放 index.html <!DOCTYPE html> <html> <he ...
- 1.横向滚动条,要设置两个div包裹. 2. 点击切换视频或者图片. overflow . overflow-x
1.横向滚动条. div.1 > div.2 > img img img 第一: 设置 div.1 一个固定的宽度 和高度 . 例如宽度 700px; 高度是 120px; 设置 o ...
- Vue.js动态组件
动态组件: 1.定义: 几个组件放在同一个挂载点下,然后根据父组件的某个变量来决定显示哪个,或者都不显示. 2.动态切换原理: 在挂载点使用<component>标签,然后使用v-bind ...
随机推荐
- A*算法(八数码问题)
#include <iostream> #include <cstring> #include <vector> #include <cmath> #i ...
- ZOJ 2852 Deck of Cards DP
题意: 一一个21点游戏. 1. 有三个牌堆,分别为1X,2X,3X. 2. 纸牌A的值为1,纸牌2-9的值与牌面面相同,10(T).J.Q.K的值为10,而而joke(F)的值为 任意大大. 3. ...
- USACO Prime Palindromes 构造回文数
这道题目一点也不卡素数的判断 就是朴素的sqrt(n) 也不卡 所以~放心的用吧. 构造回文的时候看了HINT 其中是这么写的: Generate palindromes by combining d ...
- html向servlet传乱码解决办法
html 设置为utf-8格式 <meta http-equiv="content-type" content="text/html;charset=UTF-8&q ...
- Python 2.7 学习笔记 基本知识
python是一种解释型的.面向对象的.带有动态语义的高级程序设计语言.本文介绍下python的基本知识. 一.安装 各种操作系统有自己的安装方法,linux系统一般都自带了python的环境.这里不 ...
- 转:一道笔试题-将int型数组强制转换为char*,再求strlen,涉及大小端
写出如下程序运行结果: #include<stdio.h> #include<string.h> int main() { int a[2000]; char *p = (ch ...
- 【转】C++类-内存分布
C++类内存分布 - 转载自Jerry19880126 - 博客园 的文章 在上面这篇文章的基础上做了些整理. 主要讨论了C++类对象的内存分布结构. 来看看编译器是怎么处理类成员内存分布的,特别是在 ...
- python中eval, exec, execfile,和compile [转载]
eval(str [,globals [,locals ]])函数将字符串str当成有效Python表达式来求值,并返回计算结果. 同样地, exec语句将字符串str当成有效Python代码来执行. ...
- 三个API:开启、关闭、关闭线程重定向
C:\Windows\sysnative\ 这个目录是作什么用的?来源:互联网 责任编辑:小易 时间:2015/11/13 0:17:19用户提出问题:C:\Windows\sysnative\ 这个 ...
- java正则去掉小数点后多余0
需求:已知字符串为一数字字符形式,多为float,double转换过来,将其后多余的0与.去掉. package test; /** * 去掉多余的.与0 * @author Hust * @Time ...