js中this及碰触浮现div实例

2024-03-20 12:08
文章标签 div js 实例 浮现 碰触

本文主要是介绍js中this及碰触浮现div实例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

         js中this的用法

 this:指的是调用当前方法 (函数)的那个对象,切记,一定要是当前的那一个!
 this使用时的几种情况:
1)   alert(this); this指向的是window  
alret(this);实际是缩写,全写为window.alert(this); 所以此时alert的当前其实就是windou
2) function fn(){
alert(this);
}
fn(); this指向的是window 
记忆时可以偷懒的记忆只要是函数的直接调用,都是window
3)    var oBtn = document.getElementById('btn');
oBtn.onclick = function(){
alert(this); this指向的是input
fn(); this指向的是window,此时的fn()不是当前的,所以得到的是window,而不是input。
}
4)如果在需要使用this时,发现this不是直接的,不能指向你想要的变量,可以先定义一个变量为空,把this存在里 面,在后面的代码中进行调用
this使用的实例:
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>js的this属性的运用</title>
        <style>
             h2{ height:30px; width:300px; border:2px solid pink; font-size:20px; text-align:center; line-height:30px; margin:40px auto;}
             li{ height:150px; width:100px; background:pink; border:2px solid #333; margin-top:30px; margin-left:250px; float:left; list-style:none;}
             div{ height:150px; width:200px; background:yellow; border:2px solid green; margin-top:100px; display:none;}
        </style>
        <script>
              window.onload = function(){
                var oUl = document.getElementById('list');
                var aLi = document.getElementsByTagName('li');
                var that = null;
                for(var i=0;i<aLi.length;i++){
                    aLi[i].onmousemove = function(){
                        that = this;
                        fn();
                    }
                    function fn(){
                        that.getElementsByTagName('div')[0].style.display = 'block';
                    }
                    aLi[i].onmouseout = function(){
                        this.getElementsByTagName('div')[0].style.display = 'none';
                    }
                }
              }
        </script>
    </head>
    <body>
        <h2>this属性应用实例</h2>
        <ul id="list">
            <li>
                <div></div>
            </li>
            <li>
                <div></div>
            </li>
            <li>
                <div></div>
            </li>
        </ul>
    </body>
</html>
这个例子在使用this的属性时,便通过了两种方法进行使用,一种是直接使用(用蓝色进行标记),另一种便是先把this存放到一个变量中,在后面的代码中进行调用。存this的变量为that(用红色进行标记)。



这篇关于js中this及碰触浮现div实例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/829403

相关文章

java图像识别工具类(ImageRecognitionUtils)使用实例详解

《java图像识别工具类(ImageRecognitionUtils)使用实例详解》:本文主要介绍如何在Java中使用OpenCV进行图像识别,包括图像加载、预处理、分类、人脸检测和特征提取等步骤... 目录前言1. 图像识别的背景与作用2. 设计目标3. 项目依赖4. 设计与实现 ImageRecogni

Java操作ElasticSearch的实例详解

《Java操作ElasticSearch的实例详解》Elasticsearch是一个分布式的搜索和分析引擎,广泛用于全文搜索、日志分析等场景,本文将介绍如何在Java应用中使用Elastics... 目录简介环境准备1. 安装 Elasticsearch2. 添加依赖连接 Elasticsearch1. 创

使用C#代码计算数学表达式实例

《使用C#代码计算数学表达式实例》这段文字主要讲述了如何使用C#语言来计算数学表达式,该程序通过使用Dictionary保存变量,定义了运算符优先级,并实现了EvaluateExpression方法来... 目录C#代码计算数学表达式该方法很长,因此我将分段描述下面的代码片段显示了下一步以下代码显示该方法如

Oracle Expdp按条件导出指定表数据的方法实例

《OracleExpdp按条件导出指定表数据的方法实例》:本文主要介绍Oracle的expdp数据泵方式导出特定机构和时间范围的数据,并通过parfile文件进行条件限制和配置,文中通过代码介绍... 目录1.场景描述 2.方案分析3.实验验证 3.1 parfile文件3.2 expdp命令导出4.总结

Node.js 中 http 模块的深度剖析与实战应用小结

《Node.js中http模块的深度剖析与实战应用小结》本文详细介绍了Node.js中的http模块,从创建HTTP服务器、处理请求与响应,到获取请求参数,每个环节都通过代码示例进行解析,旨在帮... 目录Node.js 中 http 模块的深度剖析与实战应用一、引言二、创建 HTTP 服务器:基石搭建(一

MySQL的索引失效的原因实例及解决方案

《MySQL的索引失效的原因实例及解决方案》这篇文章主要讨论了MySQL索引失效的常见原因及其解决方案,它涵盖了数据类型不匹配、隐式转换、函数或表达式、范围查询、LIKE查询、OR条件、全表扫描、索引... 目录1. 数据类型不匹配2. 隐式转换3. 函数或表达式4. 范围查询之后的列5. like 查询6

使用Vue.js报错:ReferenceError: “Vue is not defined“ 的原因与解决方案

《使用Vue.js报错:ReferenceError:“Vueisnotdefined“的原因与解决方案》在前端开发中,ReferenceError:Vueisnotdefined是一个常见... 目录一、错误描述二、错误成因分析三、解决方案1. 检查 vue.js 的引入方式2. 验证 npm 安装3.

Python开发围棋游戏的实例代码(实现全部功能)

《Python开发围棋游戏的实例代码(实现全部功能)》围棋是一种古老而复杂的策略棋类游戏,起源于中国,已有超过2500年的历史,本文介绍了如何用Python开发一个简单的围棋游戏,实例代码涵盖了游戏的... 目录1. 围棋游戏概述1.1 游戏规则1.2 游戏设计思路2. 环境准备3. 创建棋盘3.1 棋盘类

JS常用组件收集

收集了一些平时遇到的前端比较优秀的组件,方便以后开发的时候查找!!! 函数工具: Lodash 页面固定: stickUp、jQuery.Pin 轮播: unslider、swiper 开关: switch 复选框: icheck 气泡: grumble 隐藏元素: Headroom

在JS中的设计模式的单例模式、策略模式、代理模式、原型模式浅讲

1. 单例模式(Singleton Pattern) 确保一个类只有一个实例,并提供一个全局访问点。 示例代码: class Singleton {constructor() {if (Singleton.instance) {return Singleton.instance;}Singleton.instance = this;this.data = [];}addData(value)