event.srcElement 可以捕获当前事件作用的对象,如event.srcElement.tagName可以捕获活动标记名称。
做笔记,以防自己忘记~~ JS获取事件event,不同浏览器有不同的做法。 例如IE下,在js函数中,通过window.event就可以获取,不必在函数中添加什么参数。 也可以用Prototype或者JQuery等,它们有他们对事件的包装。还是使用JS库比较好,不然就有下边的麻烦。 Firefox:要传递参数 <head> <script> function click1(event,str1){ alert(event+str1); } </script> </
11.mouseDown事件,mouseUp,和mouseClick执行顺序 马克-to-win:下例仔细剖析了mouseDown和mouseClick的关系。当两个对象重叠在一起,(比如这里document和span),一定是先执行所有元素的mouseDown事件,之后所有元素的mouseUp,之后执行所有元素的mouseClick。(有一点切记注意,本例子测试过程中不能用alert,如用alert,down事件后不会再执行click事件了。事件就被alert打断了。) 例 11.1 <html> <head> <title>根据实验,本例仔细剖析了mouseDown和mouseClick的关系。当两个对象重叠在一起,(比如这里document和span),一定是先执行所有元素的mouseDown事件,之后所有元素的mouseUp,之后执行所有元素的mouseClick</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <SCRIPT language=JavaScript> function linkClickHandler(event) { // alert(event.srcElement+"is event.srcElement"); // alert(event.target+"is event.target"); var t =event.srcElement||event.target; // alert(t.id+" qq1 "); sss2.innerHTML += t.id+" click "; } function linkDownHandler(event) { // alert(event.srcElement+"ddddddddis event.srcElement"); // alert(event.target+"is event.target"); var t =event.srcElement||event.target; // alert(t.id+" qq1 "); sss2.innerHTML += t.id+" down "; } function documClickHandler(event) { if (document.all) { }else{ // alert("event.currentTarget is "+event.currentTarget+" event.type is "+event.type+" event.eventPhase is "+event.eventPhase+"eventPhase等于3是冒泡阶段不是capture阶段"); /*Event.CAPTURING_PHASE 1 Event.AT_TARGET 2 Event.BUBBLING_PHASE*/ sss2.innerHTML += " event.type is "+event.type+" event.eventPhase is "+event.eventPhase+"eventPhase等于3是冒泡阶段不是capture阶段"+" document click ";
代码如下: JS复制JS复制JS复制 <script type="text/javascript"> //屏蔽右键菜单 document.oncontextmenu = function (event){ if(window.event){ event = window.event; }try{ var the = event.srcElement; if (!((the.tagName == "INPUT" && the.type.toLowe
代码如下: ---- //屏蔽右键菜单 document.oncontextmenu = function (event){ if(window.event){ event = window.event; }try{ var the = event.srcElement; if (!((the.tagName == "INPUT" && the.type.toLowerCase() == "text") || the.tagName == "TEXTAREA")){ return false; } re
禁止右键菜单代码、禁止复制粘贴代码 <script type="text/javascript"> //屏蔽右键菜单 document.oncontextmenu = function (event) { if (window.event) { event = window.event; } try { var the
使用CSS隐藏元素的主要方式有diaplay: none;、opacity: 0;、visibility: hidden;、position: absolute; overflow: hidden;、clip-path: polygon(0 0, 0 0, 0 0, 0 0);、height: 0; overflow: hidden;。
最近写了一个摄影素材的站点,网友只能浏览,为了自己版权利益,防止网友在网站中直接下载和引用未经本人同意的产品素材,特意写了几个JavaScript方法屏蔽电脑的右键功能。全网最简单的方法,屏蔽鼠标右键功能,防止复制和下载,记得收藏哦!
通过下面的JS代码,可以有效地防止别人直接复制拷贝你的文章,用frame标签引用你的文章时,会自动跳转到文章正常链接,同时禁止右键菜单。
众所周知,审查元素的情况下,大家都可以随机更改一部分页面的代码, 注入恶意JS等等,这种情况避免也不难,虽然还能看到一部分H5源码,但是无法修改
// 通过event 事件获取当前元素的data中绑定的值
img标签中有一个onerror事件。是当引用的src属性获取不到图片,或者网络错误导致无法正常显示src属性的图片时,显示的提示错误图片或者是可以代替的万能图片。
在前端开发中,F12审查元素的情况下,大家都可以随机更改一部分页面的代码,注入恶意JS等等,这种情况避免也不难,虽然还能看到一部分H5源码,但是无法修改。
常规方法解决我们都知道,img标签支持onerror事件,在装载文档或图像的过程中如果发生了错误,就会触发onerror事件。可以使用一张提示错误的图片代替显示不了的图片。
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>新建网页 3</title> </head> <body>
有个神奇的东西叫做审查元素,按下神奇的F12,就是见证奇迹的时刻。审查元素真的是一个强大功能,有的时候看中别人网站的某个样式做的比较好,按下F12审查元素来查看别人的代码,统统扒过来。那么如果防止别人查看自己网站的代码,扒代码呢,当然,也只是防新手而已~心理安慰~
http://www.cnblogs.com/liugang-vip/p/5616484.html 这篇文章写的很详细,非常感谢作者。
偶尔在看天天基金网净值公告时,从源代码里剥下的一段js代码,感觉比较实用,分享一下(仅IE有效) <script type="text/javascript"> var highlightcolor='#E0F2FE'; var clickcolor='#ffedd2'; function MouseOver(){ var source=event.srcElement; if (source.tagName=="TD"){
今天想实现一个事件自动订阅到指定class的元素之上的功能。这句话很拗口,稍后解释!
1、对于DIV注入的,可以初始化时检查全部html代码。 检测是否被劫持比较简单,但对抗就略麻烦,这个在说完第2点之后再解释。 2、对于js注入,可以在window监听DOMNodeInserted事件。 事件有srcElement,可以获取到刚插入的dom节点。 这里开始简单粗暴的做正则匹配,匹配所有url。 再逐个比较是否白名单域名,如果不是,则判定为劫持。可以上报,同时可以移除dom.parentNode.removeChild(dom); 但这样容易造成误伤,因为正常页面中可能
事件冒泡: 当一个元素上的事件被触发的时候,比如说鼠标点击了一个按钮,同样的事件将会在那个元素的所有祖先元素中被触发。这一过程被称为事件冒泡;这个事件从原始元素开始一直冒泡到DOM树的最上层。
如果tab标签页比较多的话,一个个关闭比较麻烦,可以右键显示菜单,关闭所有的标签页或者特定的标签页
angularjs图片加载失败,本文的angularjs图片加载失败中的angularjs指的是angular2、angular4。
obj.attachEvent('on' + type, function () {
说明:IE下,可以使用document.formName.item("itemName")或document.formName.elements["elementName"];
这个简单的demo,可以应用到很多地方。比如导航鼠标移动到上方时,可以改变样式,或者触发下拉框,等等。很有意思 1 <html> 2 <head> 3 <style type="text/css"> 4 .red { 5 color:red; 6 font-size: 32; 7 font-style: italic; 8 } 9 .blue { 10 color: blue; 11 f
事件绑定分为两种:一种是传统事件绑定(内联模型,脚本模型),一种是现代事件绑定(DOM2级模型)。现代事件绑定在传统绑定上提供了更强大更方便的功能。 一.传统事件绑定的问题 传统事件绑定有内联模型和脚本模型,内联模型我们不做讨论,基本很少去用。先来看一下脚本模型,脚本模型将一个函数赋值给一个事件处理函数。 var box = document.getElementById('box');//获取元素 box.onclick = function () {//元素点击触发事件 alert('Lee'); };
网站被别人抓包?被别人审查?被别人扒? 代码直接插入网页,不会的话,百度一下。 <script type='text/javascript'> //屏蔽右键菜单 document.oncontextmenu = function (event) { if (window.event) { event = window.event; } try { var the = event.srcElement; if (!((the.tagNam
const handler = setInterval(function () { console.clear(); const before = new Date(); debugger; const after = new Date(); const cost = after.getTime() - before.getTime(); if (cost > 100) { } }, 1);
当下浏览器还是很多的,如果你想你的网站内容不被人手工采集的话,你的图片不想被人另存为或下载的话,我们完全可以禁止右键,禁止全站复制;这样的话:无论是想右键查看源代码还是图片另存为都做不到了,连网站文字选中也做不到;下面教大家一种方法有效禁止限制功能!
9.冒泡(event bubble) 缺省情况下,当几个元素重合,事件从最上层元素开始往下层元素传播。 例 9.1(bubbleIEFF.html) <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"/> <script type="text/javascript"> function docClick(event) { var event = event || window.event; alert("IE和FF一样:外面文档:"+event.type); } //document.captureEvents(Event.CLICK); document.onclick = docClick; </script> ie和FF都冒泡从里往外 缺省情况下,当几个元素嵌套重合,事件从最上层元素开始往下层元素传播。 例 9.2(bubble1currentTargetsrcElementIEFF.html) <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"/> <script type="text/javascript"> function gotClick(event, who) { /* 1) 在ie中没有currentTarget,我们只能用下面的方法:来仿真火狐的效果。 2)马克-to-win:event.target是最上层的元素,event.currentTarget是最底层的元素 */ var event = event||window.event; var eTarget =event.srcElement||event.target; var eCurrentBottomTarget =event.srcElement||event.currentTarget; if (window.navigator.userAgent.indexOf("MSIE") >= 1) 更多请见:https://blog.csdn.net/qq_43650923/article/details/102211582
今天给大家分享一些实用的JS代码片段,有需要的朋友欢迎收藏! 📷 1、获取浏览器的版本 function getBrowser() { var UserAgent = navigator.userAgent.toLowerCase(); var browserInfo = {}; var browserArray = { IE: window.ActiveXObject || "ActiveXObject" in window, // IE Chrom
禁用右键菜单 1、右键无任何反应 第一种 document.oncontextmenu = new Function("return false;"); 第二种 document.oncontextmenu = function (event){ if(window.event){ event = window.event; }try{ var the = event.srcElement; if (!((the.tagName == "INPUT" && the.type.toLowerCase() =
checkbox是html里面的一种复选框,操作这个东西的时候说实话是很麻烦的,因为是靠我们判断他的状态是不是被选中来操作的,今天要说的怎么将一部分checkbox选中以后,没有被选的变灰色,按照我们自己的要求来操作复选框,例子:
几条常用代码,西顾在此分享下。 1. 将彻底屏蔽鼠标右键 oncontextmenu="window.event.returnValue=false"
在文件的根目录放进去这个图片,后缀修改成ico就可以了 6.可以在收藏夹中显示出你的图标
根据提供的文章内容,这是一篇关于鼠标拖动写字效果的技术文章。文章首先介绍了该效果的实现原理和所需的HTML、CSS、JavaScript代码,然后提供了这个效果的演示和代码示例。文章还包含了如何提交代码以及该效果在浏览器中的实现细节。
1. 将彻底屏蔽鼠标右键 oncontextmenu="window.event.returnValue=false"
将彻底屏蔽鼠标右键 oncontextmenu="window.event.returnValue=false"
最初的时候我是想用js逻辑去修改样式,如果点击了,那么就改为灰色,松开后,再改为白色。结果demo有100多个列表项,我也不可能加上100多个监听,我突然想起以前学的事件代理,然后就实践了一把。出现了如下代码
获得焦点事件(onfocus)是当某个元素获得焦点时触发事件处理程序。
把下面代码复制到前面(放到所有图片标签的后边) <script type="text/javascript"> $(function(){ $("img").attr("onerror","slnotimg();"); $("img").each(function(){ this.src = this.src; }); }); function slnotimg() { var img = eve
这里介绍了JS前进、后台、刷新的各种方法。也解释了很多前进后退函数出问题的原因。 下面是用按钮做前进后退的JS:
<input type=button value=刷新 onclick=”window.location.reload()”> <input type=button value=前进 onclick=”window.history.go(1)”> <input type=button value=后退 onclick=”window.history.go(-1)”> <input type=button value=前进 onclick=”window.history.forward()”> <input type=button value=后退 onclick=”window.history.back()”> 后退+刷新<input type=button value=后退 onclick=”window.history.go(-1);window.location.reload()”>在C# Web程序中,如为页面按钮写返回上一页代码
setCapture函数的作用就是将后续的mouse事件都发送给这个对象,releaseCapture就是将鼠标事件还回去,由 document、window、object之类的自行来处理。这样就保证了在拖动的过程中,不会由于经过了其它的元素而受到干扰 – 另外,还有一个很重 要的事情是,在Win32上,mouse move的事件不是一个连续的,也就是说,并不是我们每次移动1px的鼠标指针,就会发生一个mousemove,windows会周期性检查mouse 的位置变化来产生mousemove的事件。 所以,如果是一个很小的页面对象,比如一个直径5px的圆点,如果没有setCapture和 releaseCapture,那么在鼠标按住之后,快速的移动鼠标,就有可能鼠标移动走了,但是小圆点还在原地,就是因为下一次的mousemove事 件已经不再发给这个圆点对象了。
我是歌谣 最好的种树是十年前 其次是现在 今天继续给大家带来的是ES5计算器小案例的深入讲解
既然HTML5提出与本地交互方便,就想写个HTML5的本地音乐播放器。一开始问题主要集中在怎么读取本地文件路径,我想肯定可以用JS实现去操作本地文件(因为node.js很容易实现读取本地文件,但是原生JS怎么写不太清楚),不过简单一点就用这样只能读取一个,我想做的是最好是把一个文件夹中的都取出来,然后参考http://sapphion.com/2011/11/html5-folder-upload-with-webkitdirectory/ 给file加了个webkitdirectory属性,谷歌浏览器下可以实现,发现目前为止只有谷歌浏览器支持文件夹获取,所以其他浏览器只能为file添加一个 multiple属性 ,可以一次添加多个文件,我参考了一下http://blog.csdn.net/goodnew/article/details/7355619,不过试了几个浏览器发现文章中为file添加的mozdirectorydirectory,并未发现有什么用,更坚信了只有谷歌才支持文件夹获取。后面主要问题就是获取文件的URL,播放器的话用,详细看代码,附上链接http://download.csdn.net/detail/popezong/8790939
Angular框架(以下简称“Angular”)作为一款由谷歌开发的Web应用程序框架,其强大的依赖注入系统、可重复使用的模块化开发理念和响应式编程模式等特点让Angular一问世便取得了巨大的关注和流量。 截止目前为止,Angular已经迭代了15个版本,而Angular15又有哪些新的亮眼表现呢?小编为大家简单介绍几个Angular15的新特性(以下特性源于Angular官网):
领取专属 10元无门槛券
手把手带您无忧上云