JavaScript安全防护与页面控制技巧
需积分: 3 88 浏览量
更新于2024-09-17
收藏 12KB TXT 举报
本文主要介绍了JavaScript中的一些常见代码实践,涉及到网页交互、用户操作限制、图标设置、输入禁用、框架安全以及获取客户端信息等多个方面。
1. 阻止右键菜单:`oncontextmenu="window.event.returnValue=false"` 这行代码用于阻止用户在页面元素上点击右键弹出默认的上下文菜单。通过设置事件返回值为 `false`,可以取消默认行为。
2. 禁止表格选择:`<table border oncontextmenu="return(false)">` 和 `<td onselectstart="return false">` 分别用于禁止表格和表格单元格内的文本被选中。`onselectstart` 事件阻止了文本选择的开始。
3. 阻止复制、剪切和粘贴:`onpaste="return false"`、`oncopy="return false;"` 和 `oncut="return false;"` 分别用于禁止用户在元素上执行粘贴、复制和剪切操作,确保数据不被随意修改或窃取。
4. 设置浏览器图标:`<link rel="ShortcutIcon" href="favicon.ico">` 用于定义浏览器标签页上的图标,`favicon.ico` 是图标文件的路径。
5. 设置书签图标:`<link rel="Bookmark" href="favicon.ico">` 使得用户可以将当前页面添加到书签时,显示指定的图标。
6. 禁用IME输入:`<input style="ime-mode: disabled">` 用于禁用输入法,防止用户在输入框中使用中文或其他语言的输入法。
7. 检查是否在顶层窗口:`if (window == top) top.location.href = "frames.htm";` 这段代码用于检查当前页面是否位于顶级窗口,如果是,则重定向到 `frames.htm` 页面,防止被嵌入到框架中。
8. 防止框架被嵌套:`<SCRIPT LANGUAGE=javascript><!-- if (top.location != self.location) top.location = self.location; //--></SCRIPT>` 类似地,这段代码检查当前页面是否在顶级窗口,如果不是,则将顶级窗口的地址更改为当前页面,防止被嵌入到其他框架中。
9. 禁用无脚本环境的 iframe:`<noscript><iframe src=*.html></iframe></noscript>` 当用户的浏览器不支持或禁用了JavaScript时,这段代码会显示一个空白的 iframe,防止非JavaScript环境下的恶意嵌入。
10. 创建按钮跳转链接:`<input type="button" value="查看源码" onclick="window.location='view-source:http://www.csdn.net/'">` 创建了一个按钮,点击后会跳转到指定页面的源代码视图。
11. 使用ASP检测代理服务器:`<% if Request.ServerVariables("HTTP_X_FORWARDED_FOR") <> "" then %>...<% end if %>` 这段ASP代码用来检测用户是否通过代理服务器访问,如果请求头中的 `HTTP_X_FORWARDED_FOR` 不为空,则表示可能通过代理,可以显示警告信息。
12. 获取每个控件的坐标位置:`function getIE(e){ var t = e.offsetTop; var l = e.offsetLeft; ...}` 这是一个JavaScript函数,用于获取HTML元素在页面上的垂直和水平偏移量,通常用于计算元素的位置信息。
以上代码示例展示了JavaScript在网页开发中的各种实用技巧,包括用户体验、安全防护以及页面控制等多个方面。
点击了解资源详情
点击了解资源详情
点击了解资源详情
1242 浏览量
117 浏览量
365 浏览量
tianyx1112
- 粉丝: 0
- 资源: 17
最新资源
- 基于Java ME无线网络移动端的俄罗斯方块游戏的实现(论文,源代码).zip
- JAVA局域网飞鸽传书软件设计与实现(源代码+论文).zip
- 基于Java的在线购物系统的设计与实现(源代码+论文).zip
- JAVA SMART系统-系统框架设计与开发(源代码+论文).zip
- java图书管理系统毕业设计(源代码+论文).zip
- JAVA画图形学(论文+源代码).zip
- JAVA公共资源模块的设计与开发(源代码+论文).zip
- 基于Java的远程视频会议系统(系统+论文).zip
- java Smart系统-题库及试卷管理模块的设计与开发(源代码+论文).zip
- JAVA图书馆书库管理系统设计(论文+源代码).zip
- java进销存管理系统(jsp+mssql).zip
- rt-thread-code-stm32f302-st-nucleo.rar探索者 STM32F302-Nucleo-64
- 基于.Net Mvc的 发表评论
- rt-thread-code-stm32f207-st-nucleo.rar,STM32 Nucleo-144是开发板
- Oracle约束详解 Oracle约束详解
- C++、HTML两种方式输出圣诞节主题图案/文字