首页 前端知识 2024年前端提高篇(九十四):jQuery鼠标事件,2024年最新运营岗面试自我介绍

2024年前端提高篇(九十四):jQuery鼠标事件,2024年最新运营岗面试自我介绍

2024-08-27 21:08:02 前端知识 前端哥 17 286 我要收藏
css

1,盒模型
2,如何实现一个最大的正方形
3,一行水平居中,多行居左
4,水平垂直居中
5,两栏布局,左边固定,右边自适应,左右不重叠
6,如何实现左右等高布局
7,画三角形
8,link @import导入css
9,BFC理解

js

1,判断 js 类型的方式
2,ES5 和 ES6 分别几种方式声明变量
3,闭包的概念?优缺点?
4,浅拷贝和深拷贝
5,数组去重的方法
6,DOM 事件有哪些阶段?谈谈对事件代理的理解
7,js 执行机制、事件循环
8,介绍下 promise.all
9,async 和 await,
10,ES6 的 class 和构造函数的区别
11,transform、translate、transition 分别是什么属性?CSS 中常用的实现动画方式,
12,介绍一下rAF(requestAnimationFrame)
13,javascript 的垃圾回收机制讲一下,
14,对前端性能优化有什么了解?一般都通过那几个方面去优化的?

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

效果:

在这里插入图片描述

2.event.which与contextmenu()


event.which:可以判断鼠标哪个键按下了

contextmenu():取消右键时出现的菜单

左键返回1,滚轮返回2,右键返回3

当鼠标右键时,显示小心心

$(document).contextmenu(function(e){

return false;

})//右键时出现的菜单取消掉,e虽然没有用,但一定要有

$(document).mousedown(function(e){

if (e.which == 3){

$(‘body’).append(‘<img src=“./img/1.png” alt=“” style="left:’ +

e.pageX + ‘px;’ + ‘top:’ + e.pageY + ‘px;">’)

}

})

没有取消菜单时,右击会是这样:

在这里插入图片描述

取消掉,右击会是这样:

在这里插入图片描述

我的小心心图是这样的,本身有两个心心,所以点一下有两个心心:

在这里插入图片描述

3.mouseenter() / mouseleave() / mouseover() / mouseout()


前两个不会冒泡

后两个冒泡

box

3.1 mouseenter / mouseleave:

$(‘.box’).mouseenter(function(){

console.log(‘enter’);

}).mouseleave(function(){

console.log(‘leave’);

})//给box绑定mouseenter和mouseleave事件

$(‘.wrapper’).mouseenter(function(){

console.log(‘enter-wrapper’);

}).mouseleave(function(){

console.log(‘leave-wrapper’);

})//给wrapper绑定mouseenter和mouseleave事件

效果:

1.当鼠标进入wrapper(或刷新时已在wrapper区域,然后动一下)时,触发wrapper的enter事件;

2.当鼠标进入box区域时,触发box的enter事件,没有触发wrapper的enter事件,leave同理,说明这两个事件是不冒泡的(父子设置同样的事件,子触发,父不触发)

在这里插入图片描述

3.2 mouseover / mouseout

$(‘.box’).mouseover(function(){

console.log(‘over’);

}).mouseout(function(){

console.log(‘out’);

})//给box绑定mouseover和mouseout事件

$(‘.wrapper’).mouseover(function(){

console.log(‘over-wrapper’);

}).mouseout(function(){

console.log(‘out-wrapper’);

})//给wrapper绑定mouseover和mouseout事件

效果:

1.当我鼠标从wrapper外部进入(或刷新时鼠标已在wrapper区域然后鼠标动一下)时,触发wrapper的over事件;

2.鼠标移动到box区域,同时触发wrapper的mouseout事件、box的mouseover事件、wrapper的mouseover事件

3.当鼠标移开box区域到wrapper区域,触发box的mouseout事件、wrapper的mouseout事件、wrapper的mouseover事件

4.所以这两个事件是冒泡的,进入box时,box(子)和wrapper(父)的over事件都被触发

5.另外,从wrapper移动到box区域时,还触发了wrapper的out事件,即系统认为此时离开wrapper,进入box

在这里插入图片描述

在这里插入图片描述

4.mousedown / mousemove / mouseup


可以实现鼠标拖拽元素进行移动的效果

为防止鼠标移动过快,脱离绑定事件的元素,mousemove一般绑定在document上,而不是绑定在移动元素上

.box {

position: absolute;

left: 100px;

top: 100px;

width: 100px;

height: 100px;

background: pink;

}/* 设置了postion,left和top才有意义 */

box

这里分享一份由字节前端面试官整理的「2021大厂前端面试手册」,内容囊括Html、CSS、Javascript、Vue、HTTP、浏览器面试题、数据结构与算法。全部整理在下方文档中,共计111道

HTML

  • HTML5有哪些新特性?

  • Doctype作⽤? 严格模式与混杂模式如何区分?它们有何意义?

  • 如何实现浏览器内多个标签页之间的通信?

  • ⾏内元素有哪些?块级元素有哪些? 空(void)元素有那些?⾏内元 素和块级元素有什么区别?

  • 简述⼀下src与href的区别?

  • cookies,sessionStorage,localStorage 的区别?

  • HTML5 的离线储存的使用和原理?

  • 怎样处理 移动端 1px 被 渲染成 2px 问题?

  • iframe 的优缺点?

  • Canvas 和 SVG 图形的区别是什么?

JavaScript

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

  • 问:0.1 + 0.2 === 0.3 嘛?为什么?

  • JS 数据类型

  • 写代码:实现函数能够深度克隆基本类型

  • 事件流

  • 事件是如何实现的?

  • new 一个函数发生了什么

  • 什么是作用域?

  • JS 隐式转换,显示转换

  • 了解 this 嘛,bind,call,apply 具体指什么

  • 手写 bind、apply、call

  • setTimeout(fn, 0)多久才执行,Event Loop

  • 手写题:Promise 原理

  • 说一下原型链和原型链的继承吧

  • 数组能够调用的函数有那些?

  • PWA使用过吗?serviceWorker的使用原理是啥?

  • ES6 之前使用 prototype 实现继承

  • 箭头函数和普通函数有啥区别?箭头函数能当构造函数吗?

  • 事件循环机制 (Event Loop)

bind、apply、call

  • setTimeout(fn, 0)多久才执行,Event Loop

  • 手写题:Promise 原理

  • 说一下原型链和原型链的继承吧

  • 数组能够调用的函数有那些?

  • PWA使用过吗?serviceWorker的使用原理是啥?

  • ES6 之前使用 prototype 实现继承

  • 箭头函数和普通函数有啥区别?箭头函数能当构造函数吗?

  • 事件循环机制 (Event Loop)

转载请注明出处或者链接地址:https://www.qianduange.cn//article/17083.html
标签
评论
发布的文章

安装Nodejs后,npm无法使用

2024-11-30 11:11:38

大家推荐的文章
会员中心 联系我 留言建议 回顶部
复制成功!