当前位置: 首页 > news >正文

js-JavaScript高级程序设计学习笔记14

第十六章 HTML5脚本编程

1、跨文档消息传递。简称XDM,指的是来自不同域的页面间传递消息。

XDM的核心是postMessage()方法,接收两个参数,一条消息和消息接收方来自哪个域的字符串。

接收到XDM消息时,会触发window对象的message事件,异步触发

为保险起见,第一个参数传递字符串。在传入结构化的数据时调用JSON.stringify(),然后在onmessage事件处理程序中调用JSON.parse()。

2、原生拖放

1、拖放事件。拖动元素时,将依次触发dragstart/drag/dragend。当某个元素被拖动到一个有效的放置目标上时,会依次出发dragenter/dragover/dragleave或drop。

2、自定义放置目标。在拖动元素经过某些无效的放置目标时,可以看到一种特殊的光标,表示不能放置。所有元素支持放置目标,但是默认是禁止的,可以把dragenter和dragover事件的默认行为阻止,变成有效的放置目标。

3、dataTransfer对象。这个对象中的数据只能在drop事件处理程序中读取

4、dropEffect和effectAllowed。是dataTransfer对象的两个属性。前者可以知道被拖动的元素能够执行哪种放置行为:none/move/copy/link。dropEffect只有搭配effectAllowed才有用,effectAllowed表示允许拖动元素的哪种dropEffect。

5、可拖动。默认情况下,图像/链接和文本是可以拖动的。其他元素也可以拖动——draggable属性。

6、其他成员。HTML5规定的datatransfer中包含的其他属性和方法P485.

3、媒体元素

<audio> <video>

poster属性是在加载视频内容期间显示一幅图。

如果标签中有controls属性,表示应显示UI控件。

嵌入source标签指定多个不同的媒体来源。

1、属性。P487

2、事件。

3、自定义媒体播放器。使用play()和pause()方法,可以手工控制媒体文件的播放。

4、检测编解码器的支持情况。canPlayType()方法。

5、Audio类型。可以在任何时候播放音乐。

4、历史状态管理。P491

相关文章:

  • mysql数据库性能调优总结积累
  • 百度贴吧爬虫node+vue baidu_tieba_crawler
  • awk 对列数据求和
  • 【哈佛幸福课·健康之道】锻炼的真相
  • 阿里云windows 2012服务器部署java web程序教程
  • 百度UEditor粘贴或插入的表格不显示边框的解决办法
  • 第十三章 Linux磁盘管理-RAID
  • iOS NSLog调试技巧
  • linux重定向总结
  • 【MySQL】MyRocks 漫谈
  • spring-boot版本号1.4.1使用log4j日志,出错
  • linux 笔记 3-2.高级网络配置
  • 阿里云centos7创建ipv6隧道
  • debug调试解决问题
  • 从百度云下载openSUSE leap42.2 ISO超方便
  • Apache的80端口被占用以及访问时报错403
  • ES学习笔记(10)--ES6中的函数和数组补漏
  • GDB 调试 Mysql 实战(三)优先队列排序算法中的行记录长度统计是怎么来的(上)...
  • Git的一些常用操作
  • js写一个简单的选项卡
  • LeetCode刷题——29. Divide Two Integers(Part 1靠自己)
  • MD5加密原理解析及OC版原理实现
  • php中curl和soap方式请求服务超时问题
  • vue从创建到完整的饿了么(18)购物车详细信息的展示与删除
  • 大主子表关联的性能优化方法
  • 对象引论
  • 聚簇索引和非聚簇索引
  • 聚类分析——Kmeans
  • 聊聊springcloud的EurekaClientAutoConfiguration
  • 面试遇到的一些题
  • 前嗅ForeSpider中数据浏览界面介绍
  • 手写双向链表LinkedList的几个常用功能
  • 限制Java线程池运行线程以及等待线程数量的策略
  • 详解移动APP与web APP的区别
  • 你对linux中grep命令知道多少?
  • 400多位云计算专家和开发者,加入了同一个组织 ...
  • 直播平台建设千万不要忘记流媒体服务器的存在 ...
  • #多叉树深度遍历_结合深度学习的视频编码方法--帧内预测
  • #基础#使用Jupyter进行Notebook的转换 .ipynb文件导出为.md文件
  • (android 地图实战开发)3 在地图上显示当前位置和自定义银行位置
  • (ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY)讲解
  • (Ruby)Ubuntu12.04安装Rails环境
  • (附源码)ssm旅游企业财务管理系统 毕业设计 102100
  • (欧拉)openEuler系统添加网卡文件配置流程、(欧拉)openEuler系统手动配置ipv6地址流程、(欧拉)openEuler系统网络管理说明
  • (十六)Flask之蓝图
  • (未解决)jmeter报错之“请在微信客户端打开链接”
  • (转)fock函数详解
  • ./configure,make,make install的作用(转)
  • .MSSQLSERVER 导入导出 命令集--堪称经典,值得借鉴!
  • .NET Framework 3.5中序列化成JSON数据及JSON数据的反序列化,以及jQuery的调用JSON
  • .net 程序 换成 java,NET程序员如何转行为J2EE之java基础上(9)
  • .NET 指南:抽象化实现的基类
  • .Net下使用 Geb.Video.FFMPEG 操作视频文件
  • .NET学习教程二——.net基础定义+VS常用设置
  • .Net中ListT 泛型转成DataTable、DataSet