在JavaScript中,有许多实用的技巧可以提升开发效率和用户体验。以下是一些从标题和描述中提取的关键知识点:
1. **禁用右键菜单**:
使用`oncontextmenu`事件处理函数,可以阻止用户在页面元素上右键点击弹出默认的上下文菜单。例如:`<table oncontextmenu="window.event.returnValue=false">...</table>`。
2. **取消文本选择和复制**:
通过`onselectstart`事件,可以禁止用户在页面上的某些区域进行文本选择。如:`<body onselectstart="return false;">...`。同时,使用`oncopy`, `oncut`事件可以防止内容被复制:`<input oncopy="return false;" oncut="return false;">`。
3. **设置网页图标**:
使用`<link>`标签,可以设置浏览器地址栏的favicon图标:`<link rel="Shortcut Icon" href="favicon.ico">` 和收藏夹中的图标:`<link rel="Bookmark" href="favicon.ico">`。
4. **关闭输入法**:
对于输入框,可以设置`ime-mode`属性为`disabled`,以关闭输入法:`<input style="ime-mode:disabled">`。
5. **防止被嵌入到框架中**:
如果不希望网页被其他页面以frame或iframe的方式嵌入,可以检测`top.location`和`self.location`,如果两者不同,则重定向到无框架的页面:`<script>if (top.location != self.location) top.location=self.location;</script>`。
6. **禁止另存为**:
通过`noscript`标签和嵌套的`<***>`标签,可以尝试阻止用户将网页另存为本地文件:`<noscript><*** src="/*.html"></***></noscript>`。
7. **查看源代码链接**:
创建一个按钮,当用户点击时,直接打开当前页面的源代码视图:`<input type=button value="查看网页源代码" onclick="window.location = 'view-source:'+ 'http://www.pconline.com.cn'">`。
8. **确认删除操作**:
在链接中使用`onclick`事件和`confirm()`函数,可以在用户点击删除链接时弹出确认对话框:`<a href="javascript:;" onclick="if(confirm('确实要删除吗?')) location='boos.asp?areyou=删除&page=1'">删除</a>`。
9. **获取控件的绝对位置**:
JavaScript提供了获取元素位置的方法,例如使用`offsetTop`和`offsetLeft`属性,可以计算元素相对于其最近的定位祖先元素的位置。对于IE和非IE浏览器,可能需要不同的实现方式。
10. **光标定位到文本框末尾**:
当文本框获得焦点时,可以通过创建和操作`TextRange`对象来使光标始终位于文本框的末尾:`<input type=text name=text1 value="123" onfocus="cc()">`,其中`cc()`函数实现了该功能。
11. **获取上一页来源**:
`document.referrer`属性可以返回用户从哪个页面跳转到当前页面的URL。
12. **窗口操作**:
使用ActiveXObject,可以执行窗口的最小化、最大化和关闭操作,例如:`<object id=hh1 classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11"> <param name="Command" value="Minimize"></object>`。
以上就是从标题和描述中提取的一些JavaScript经典技巧,它们涵盖了页面交互、安全控制、用户体验等多个方面。掌握这些技巧,能够帮助开发者更好地构建和优化网页。