如何在html中禁止文字的复制

如何在html中禁止文字的复制,第1张

在<body>标签中添加以下代码:

oncontextmenu='return false'    禁止右键

ondragstart='return false'    禁止拖动

onselectstart ='return false'    禁止选中

onselect='document.selection.empty()'    禁止选中

oncopy='document.selection.empty()'    禁止复制

onbeforecopy='return false'    禁止复制

onmouseup='document.selection.empty()'

扩展资料

示例代码如下:

<body leftmargin=0 topmargin=0 oncontextmenu='return false' ondragstart='return false' onselectstart ='return false' onselect='document.selection.empty()' oncopy='document.selection.empty()' onbeforecopy='return false' onmouseup='document.selection.empty()'>

window对象是一个虚拟的对象,可以把它看作是你所使用的浏览器的窗口,其地位很高,因为他是浏览器脚本引擎中的globalobject。

Window -- 代表浏览器中一个打开的窗口:

对象属性

window //窗口自身

window.self //引用本窗户window=window.self

window.name //为窗口命名

window.defaultStatus //设定窗户状态栏信息

window.location //URL地址,配备布置这个属性可以打开新的页面

对象方法

window.alert("text") //提示信息会话框

window.confirm("text") //确认会话框

window.prompt("text") //要求键盘输入会话框

window.setIntervel("action",time) //每一隔指定的时间(毫秒)就执行一次 *** 作

window.clearInterval() //清除时间配备布置作用就是终止轮回

window.setTimeout(action,time) //隔了指定的时间(毫秒)执行一次 *** 作

window.open() //打开新的窗口

window.close() //关闭窗口

成员对象

window.event

window.document //见document对象详解

window.history

window.screen

window.navigator

window.external

-------------------------------------------------- -------------------

window.history对象

window.history.length //浏览过的页面数

history.back() //后退

history.forward() //前进

history.go(i) //前进或后退到历史记录的第i个页面

//i>0进步,i<0 后退

  ------------------------------------------------- -------------------

window.screen对象

 window.screen.width //屏幕宽度

window.screen.height //屏幕高度

window.screen.colorDepth //屏幕色深

window.screen.availWidth //可用宽度

window.screen.availHeight //可用高度(除去任务栏的高度)

-------------------------------------------------- -------------------

window.external对象

window.external.AddFavorite("地址","标题" ) //把网站新增到保藏夹

-------------------------------------------------- -------------------

window.navigator对象

window.navigator.appCodeName //浏览器代码名

window.navigator.appName //浏览器应用程序名

window.navigator.appMinorVersion //浏览器补丁版本

window.navigator.cpuClass //cpu类型 x86

window.navigator.platform // *** 作体系类型 win32

window.navigator.plugins

window.navigator.opsProfile

window.navigator.userProfile

window.navigator.systemLanguage //客户体系语言 zh-cn简体中文

window.navigator.userLanguage //用户语言,同上

window.navigator.appVersion //浏览器版本

window.navigator.userAgent

window.navigator.onLine //用户否在线

window.navigator.cookieEnabled //浏览器是否撑持cookie

window.navigator.mimeTypes

document对象 -- 代表整个HTML 文档,可用来访问页面中的所有元素:

对象属性

document.title //设置文档标题等价于HTML的<title>标签

document.bgColor //设置页面背景色

document.fgColor //设置前景色(文本颜色)

document.linkColor //未点击过的链接颜色

document.alinkColor//激活链接(焦点在此链接上)的颜色

document.vlinkColor//已点击过的链接颜色

document.URL //设置URL属性从而在同一窗口打开另一网页

document.fileCreatedDate //文件建立日期,只读属性

document.fileModifiedDate //文件修改日期,只读属性

document.fileSize //文件大小,只读属性

document.cookie//设置和读出cookie

document.charset //设置字符集 简体中文:gb2312

常用对象方法

document.write() //动态向页面写入内容

document.createElement(Tag) //创建一个html标签对象

document.getElementById(ID) //获得指定ID值的对象

document.getElementsByName(Name) //获得指定Name值的对象

document.body.appendChild(oTag)

body-主体子对象

document.body //指定文档主体的开始和结束等价于<body></body>

document.body.bgColor //设置或获取对象后面的背景颜色

document.body.link //未点击过的链接颜色

document.body.alink //激活链接(焦点在此链接上)的颜色

document.body.vlink //已点击过的链接颜色

document.body.text //文本色

document.body.innerText //设置<body>...</body>之间的文本

document.body.innerHTML //设置<body>...</body>之间的HTML代码

document.body.topMargin //页面上边距

document.body.leftMargin//页面左边距

document.body.rightMargin //页面右边距

document.body.bottomMargin //页面下边距

document.body.background//背景图片

document.body.appendChild(oTag) //动态生成一个HTML对象

常用对象事件

document.body.onclick="func()" //鼠标指针单击对象是触发

document.body.onmouseover="func()" //鼠标指针移到对象时触发

document.body.onmouseout="func()" //鼠标指针移出对象时触发

location-位置子对象

document.location.hash // #号后的部分

document.location.host // 域名+端口号

document.location.hostname // 域名

document.location.href // 完整URL

document.location.pathname // 目录部分

document.location.port // 端口号

document.location.protocol // 网络协议(http:)

document.location.search// ?号后的部分

常用对象事件

documeny.location.reload() //刷新网页

document.location.reload(URL) //打开新的网页

document.location.assign(URL) //打开新的网页

document.location.replace(URL) //打开新的网页

selection-选区子对象

document.selection

images集合(页面中的图象):

----------------------------

a)通过集合引用

document.images //对应页面上的<img>标签

document.images.length //对应页面上<img>标签的个数

document.images[0] //第1个<img>标签

document.images[i] //第i-1个<img>标签

----------------------------

b)通过nane属性直接引用

<img name="oImage">

document.images.oImage //document.images.name属性

----------------------------

c)引用图片的src属性

document.images.oImage.src //document.images.name属性.src

性能&集成

web workers

Web Worker 是HTML5标准的一部分,这一规范定义了一套 API,它允许一段JavaScript程序运行在主线程之外的另外一个线程中。

一般情况下,当在 HTML 页面中执行脚本时,页面的状态是不可响应的,直到脚本已完成。 

web worker 是运行在后台的 JavaScript,独立于其他脚本,不会影响页面的性能。您可以继续做任何愿意做的事情:点击、选取内容等等,而此时 web worker 在后台运行。

History API

window 对象通过history对象提供对浏览器历史记录的访问能力。它暴露了一些非常有用的方法和属性,让你在历史记录中自由前进和后退,而在HTML5中,更可以 *** 纵历史记录中的数据。

概览

可以通过back(),forward()和go()方法在用户的历史记录中前进与后退。

要在历史记录中前进和后退,只需要这样做:

window.history.back()//后退window.history.forword()//前进12

而利用go()方法,通过指定一个相对于当前页面位置的数值,可以从当前会话的历史记录中加载页面(当前页面索引值为0,上一页为-1,下一页为1)

window.history.go(-1)//后退一页,相当于back()window.history.go(1) //向前移动一页(相当于调用forward())12

你可以查看length属性值,了解历史记录栈中一共有多少页:

var numberOfEntries = window.history.length1

添加和修改历史记录条目

HTML5引进了history.pushState()方法和history.replaceState()方法,它们允许你逐条地添加和修改历史记录条目。这些方法可以协同window.onpopstate事件一起工作。

例子: 

假设 hfoo.html 将执行如下JavaScript代码:

var stateObj = { foo: "bar" }

history.pushState(stateObj, "page 2", "bar.html")12

这将让浏览器的地址栏显示tml,但不会加载bar.html页面也不会检查bar.html是否存在。

假设现在用户导航到了com,然后点击了后退按钮,此时,地址栏将会显示har.html,并且页面会触发popstate事件,该事件中的状态对象(state object)包含stateObj的一个拷贝。该页面看起来像foo.html,尽管页面内容可能在popstate事件中被修改。

如果我们再次点击后退按钮,URL将变回hoo.html,文档将触发另一个popstate事件,这次的状态对象为null。回退同样不会改变文档内容。

pushState()方法 

此方法有三个参数:

状态对象(state object):一个js对象,与用pushState()方法创建的新历史记录条目关联。

标题(title):FireFox浏览器目前会忽略该参数,虽然以后可能会用上。考虑到未来可能会对该方法进行修改,传一个空字符串会比较安全。或者,你也可以传入一个简短的标题,标明将要进入的状态。

地址(URL):新的历史记录条目的地址。 

浏览器不会在调用pushState()方法后加载该地址,但之后,可能会试图加载,例如用户重启浏览器。 

新的URL不一定是绝对路径;如果是相对路径,它将以当前URL为基准; 

传入的URL与当前URL应该是同源的,否则,pushState()会抛出异常。 

该参数是可选的;不指定的话则为文档当前URL。

replaceState()方法 

history.replaceState() *** 作类似于history.pushState(),不同之处在于replaceState()方法会修改当前历史记录条目而并非创建新的条目。

popstate事件 

每当激活的历史记录发生变化时,都会触发popstate事件。如果被激活的历史记录条目是由pushState所创建,或是被replaceState方法影响到的,popstate事件的状态属性将包含历史记录的状态对象的一个拷贝。

contenteditable属性

在HTML5中,通过设置contenteditable属性,任何元素都是可编辑的.,可以瞬间把你的网站变成wiki!

<!DOCTYPE html><html>

 <body>

   <div contenteditable="true">

     This text can be edited by the user.    </div>

 </body></html>12345678

拖放

HTML5 的拖放 API 能够支持在网站内部和网站之间拖放项目。同时也提供了一个更简单的供扩展和基于 Mozilla 的应用程序使用的 API。

拖放会触发一系列拖放事件:dragstart、dragenter、dragover、dragleave等。

焦点管理

支持新的 HTML5 activeElement 属性和 hasFocus 方法。

activeElement

document.activeElement:返回当前页面中获得焦点的元素,只读。

很多情况下,该属性会返回一个<input>或者<textarea>元素,于此同时,如果用户在文本输入框中选中了一些文本,还可以使用该元素的selectionStart和selectionEnd属性获得准确的选中文本内容.

该属性的值还可能是一个<select>元素(下拉菜单)或者type属性为button,checkbox或radio的<input>元素.

通常,用户可以通过Tab键来在页面中可以获得焦点的那些元素中切换,然后按下空格键激活这个元素

如果没有某个元素获得焦点,则该属性的值为当前页面中的<body>元素. 

截至目前只有firefox3.6支持。

hasFocus()

document.hasFocus() 方法返回一个 Boolean,表明当前文档或者当前文档内的节点是否获得了焦点。

设备访问

使用camera API

可以参考什么是HTML5(二)中相关部分。

触摸事件

使用地理位置定位

地理位置 API 允许用户向 Web 应用程序提供他们的位置。出于隐私考虑,报告地理位置前会先请求用户许可。

地理位置 API 通过 navigator.geolocation 提供。

获取当前定位

可以调用 getCurrentPosition() 函数获取用户当前定位位置。 

这会异步地请求获取用户位置,并查询定位硬件来获取最新信息。当定位被确定后,定义的回调函数就会被执行。

navigator.geolocation.getCurrentPosition(function(position) {

 do_something(position.coords.latitude, position.coords.longitude)})123

检测设备方向

越来越多支持web功能的设备拥有检测自身方向的能力了;也就是说,这些设备可以记录下其受地心引力作用下而在方向上产生变化的数据。

有两种js事件负责处理方向信息。

DeviceOrientationEvent:会在加速度传感器检测到设备在方向上发生变化时触发。

DeviceMotionEvent:会在加速度发生改变时触发。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7515315.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-06
下一篇 2023-04-06

发表评论

登录后才能评论

评论列表(0条)

保存