Yii2 框架下bootstrap 弹窗预览视频等~
Yii2 本身已经引用了'yii\bootstrap\BootstrapAsset',所以使用bootstrap 非常简洁。
1 在PHP页面引用命名空间 use app\assets\AppAsset;
2 可以直接在PHP页面书写要弹出的iframe的div;在此出可以设置弹窗的宽高,位置,对话框标题等
<div class="modal fade" id="myModalpreview" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" data-backdrop="false">
<div class="modal-dialog" style="width:800px;">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true"> × </button>
<h4 class="modal-title" id="myModalLabel">
视频预览
</h4>
</div>
<div class="modal-body">
<iframe class='iframeedit' style="width:750px;min-height:500px;border:none;" src=""></iframe>
</div>
</div>
</div>
</div>
3 给点击后弹窗按钮添加数据关联: 需要传输的数据名添加data-id来标志
<div class='itemvideopic' style='cursor:pointer;' data-id="<?=isset($videourlsthis[0])?$videourlsthis[0]:'null'?>" data-toggle='modal' data-target="#myModalpreview"></div>
4 重要的一步来了,书写JS将视频信息传递给iframe,方法为bootstrap自带的方法,
需要注意的事页面做了其他操作之后需要重新注册一下这个方法,可以封装起来,多次调用注册即可
$('#myModalpreview').on('show.bs.modal', function (event) {
var button = $(event.relatedTarget);
var id = button.data('id');
var modal = $(this);
modal.find('.iframeedit').attr('src','/vod/modules/personalcourse/views/personalco/videopreview.php?id='+id);
});
5,视频预览的php页面代码
<?php
$videourls=$_REQUEST['id'];
?>
<div style='width:720px;height:450px;'>
<?php echo
"<script type='text/javascript' src='/vod/web/sewise.player.min.js'></script>"
?>
<?php echo
"<script type='text/javascript'>
SewisePlayer.setup({
server: 'vod',
type: 'flv',
videourl: '{$videourls}',
skin: 'vodWhite',
title: '',
lang: 'zh_CN',
starttime:0
});
</script>"
?>
</div>
6效果如下:

7 bootstrap 处理文本过长的代码:(原理为文本过长显示省略号,鼠标放在文本上时,上方弹窗显示所有文本)
<li style='cursor:pointer;' class='courseunpublishitem' data-toggle="tooltip" data-placement="top" title="<?= $courseitem?>">
<?= strlen($courseitem)>15?mb_substr($courseitem,0,5,'utf-8').'...':$courseitem ?>
</li>
Yii2 框架下bootstrap 弹窗预览视频等~的更多相关文章
- 终极指南:如何为iOS8应用制作预览视频
最近一两个月里,苹果的世界里出现了很多新东西,比如屏幕更大的iPhone 6,可穿戴设备Apple Watch,iOS8,以及旨在帮助用户更好的发现应用的App Store改版等等. 说到App St ...
- APP_Store - 怎样为iOS8应用制作预览视频
关于iOS 8应用预览视频的话题,从设计.技术规范,到录屏.编辑工具,介绍的都比较详尽:建议收藏,在接下来用的到的时候作以参考.下面进入译文. 最近一两个月里,苹果的世界里出现了很多新东西,比如屏幕更 ...
- deepin linux下markdown实时预览
# deepin linux下markdown实时预览 ## 参考文章------------------------------ [vim安装markdown插件](http://www.jians ...
- Yii2 框架下 session跨域共享互通
在项目实施过程中,往往把一个大项目进行分拆成几个独立的项目,项目用完全独立的域名和文件,可以放到不同的服务器上的独立分项目. 几个子项目共用一个登录点. 原理简单来说就是服务端session 共享, ...
- ffmpeg实现视频文件合并/截取预览视频/抽取音频/crop(裁剪)(ffmpeg4.2.2)
一,ffmpeg的安装 请参见: https://www.cnblogs.com/architectforest/p/12807683.html 说明:刘宏缔的架构森林是一个专注架构的博客,地址:ht ...
- IE8环境下的上传图片预览
今天做一个需要在IE浏览器上使用的信息录入项目,遇到了图片上传预览的问题,找了一些资料,最后使用了IE自带的滤镜做到了 <!--HTML IE8不支持opacity,只能使用双层,一层背景半透明 ...
- 关于asp.net mvc中 weiui gallery中IOS 下不显示预览图片问题的解决方式
IOS 下面不显示预览. 结果去掉了红框中的缓存部分 就可以显示了 备忘,也帮助一下需要的朋友 @*<meta http-equiv="pragma" content=&qu ...
- CPF C#跨平台UI框架发布安卓端预览版
CPF的安卓端适配采用Xamarin的安卓绑定库,而不是Xamarin.Form.CPF和flutter差不多,完全由skia绘制,基本不依赖原生控件. 当前还只是预览版,不建议用在正式项目中. 可能 ...
- YII2框架下使用PHPExcel导出柱状图
导出结果: 首先,到官网下载PHPExcel插件包,下载后文件夹如下: 将Classes文件夹放入到项目公共方法内. 新建控制器(访问导出的方法):EntryandexitController < ...
随机推荐
- mysql 自己定义存储过程和触发器
mysql 自己定义存储过程和触发器 --存储过程示范 DROP PROCEDURE IF EXISTS PRO_TEST; CREATE PROCEDURE PRO_TEST(IN NUM_IN I ...
- Python网络爬虫(6)--爬取淘宝模特图片
经过前面的一些基础学习,我们大致知道了如何爬取并解析一个网页中的信息,这里我们来做一个更有意思的事情,爬取MM图片并保存.网址为https://mm.taobao.com/json/request_t ...
- fuser:用文件或者套接口表示进程
fuser:用文件或者套接口表示进程 作用:fuser命令用文件或者套接口表示进程. 用法:fuser [-a | -s | -c] [-4 | -6] [-n space] [-k [-i] [-s ...
- 图片翻页效果引出的animate.css,很好玩,多动动吧~
有一个项目,客户需要页面翻转的效果,需要应用在合作伙伴里面的图片上,一共有43张图片,我把它做成了随机定时的转动,鼠标经过时转动: animate.css科普文章:http://www.dowebok ...
- 疯狂安卓Android自学笔记
开发者必备自学工具: 谷歌搜索:www.yundou.info Android原版开发文档 (英文) Doc http://www.phoned.cn/docs/reference/android/v ...
- Android的Fragment中onActivityResult不被调用的解决方案
常见的,我们会在FragmentActivity中嵌套一层Fragment使用,甚至两次或多层Fragment嵌套使用.这个时候,在第二级或者更深级别的Fragment调用startActivityF ...
- SQLSERVER执行时间统计工具SQLQueryStress
有时候需要检测一下SQL语句的执行时间,相信大家都会用SET STATISTICS TIME ON开关打开SQLSERVER内置的时间统计 SET STATISTICS TIME ON 不过这款小工具 ...
- 在Lambda表达式中使用循环变量
在C#5.0之前,如果在foreach循环中的lambda表达式里使用循环变量,那么你会发现一些意想不到的现象,例子如下: , , , }; var actions = new List<Act ...
- (原) c++ 杂
Declaration of variables C++ is a strongly-typed language, and requires every variable to be decla ...
- 一台nginx服务器多域名配置 (转)
Nginx强大的正则表达式支持,可以使server_name的配置变得很灵活,如果你要做多用户博客,那么每个用户拥有自己的二级域名也就很容易实现了. 下面我就来说说server_name的使用吧: s ...