问题
当我们在页面设计时,如果让用户禁止复制、禁止粘贴等操作,该如何操作呢?
方案
给需要效果的当前元素的父级元素加上禁止操作的方法事件即可
<input type="text" value="nopaste" onpaste="return false"></input>
使用场景:禁止鼠标在网页上拖动
ondragstart="return false"
使用场景:很多网站上的页面内容是不允许复制的,这样可以防止用户或者程序恶意的去抓取页面数据。
oncopy="return false"
使用场景:网银转账时,输入对方卡号,需要输入两次,通常第二次输入的输入框是不允许粘贴的,这样就在一定程度上保证了卡号的准确性。
onpaste="return false"
oncut = "return false"
使用场景:页面加载后,防止通过右键点击形式查看源代码
oncontextmenu="return false"
<noscript><iframe src="*.htm"></iframe></noscript> //放在head里面
触发时间为目标对象被开始选中时(即选中动作刚开始,尚未实质性被选中)
基本上都能支持,但不被 input 和 textarea 标签支持
注意:如果想在火狐中禁用的话可以使用样式控制 div { -moz-user-select: none; }
onselectstart="return false"
文本框中的文本被选中时发生
被 input 和 textarea 标签支持
使用场景:实现元素内文本不被选中
onselect="return false"