-
手把手教你如何实现前端的吸顶效果
前端实现吸顶效果 1、监听scroll事件,实现吸顶功能 2、css实现吸顶 写页面经常会遇到这种需求:导航菜单初始位置不在头部,滑动页面时候当导航菜单滑到头部位置就固定在头部,往下滑导航菜单又回到初始位置。 网页被卷起来的高度/宽度(即浏览器滚动条滚动后隐藏的页面内容高度) (javascript) document.documentElement.scrollTop //firefox (javascript) document.documentElement.s…
-
微信小程序前端源码逻辑和工作流程解析
看完微信小程序的前端代码真的让我热血沸腾啊,代码逻辑和设计一目了然,没有多余的东西,真的是大道至简。 废话不多说,直接分析前端代码。个人观点,难免有疏漏,仅供参考。 文件基本结构: 图1 先看入口app.js,app(obj)注册一个小程序。接受一个 object 参数,其指定小程序的生命周期函数等。其他文件可以通过全局方法getApp()获取app实例,进而直接调用它的属性或方法,例如(getApp().globalData) //app.jsApp({ onLaunch: function …
-
javascript调试之console.table()的详细内容
昨天我了解到Chrome调试工具一个小巧的调试方法,在WDCC期间, Marcus Ross(@zahlenhelfer) 介绍了,chrome调试工具各种调试方法,这个只是其中一种,现在我来给大家秀下。 用CONSOLE.LOG()展示数组 想象下你构造了如下数组 var languages = [ { name: “JavaScript”, fileExtension: “.js” }, { name: “TypeScript…
-
JS 定义用字符串拼接的变量的解析
今天在写js的时候碰到了难题,我又一个页面需要生成很多的变量。但是变量的名称是根据参数的不同而区分的。 例如可能需要生成date_1,date_2,datet_3…(后面的数字是根据参数来的)。 所以我的函数名 应该由var name = “test_”+num;生成函数名 但这问题就来了。 1可以使用 window[name] = ” ” 这种方式来定义变量: 所以 var “test_”+num = 100;…
-
在javascript中,NaN是什么类型
NaN 属性表示一个“不是数字”的值。这个特殊的值是因为运算不能执行而导致的,不能执行的原因要么是因为其中的运算对象之一非数字(例如, “abc” / 4),要么是因为运算的结果非数字(例如,除数为零)。 首先,虽然 NaN 意味着“不是数字”,但是它的类型是 Number。 console.log(typeof NaN === “number”); // logs “true” 此外, NaN 和任何东西比较——甚至是它…
-
详解JavaScript之作用域
作用域是可访问变量的集合。 JavaScript 作用域 在 JavaScript 中, 对象和函数同样也是变量。 在 JavaScript 中, 作用域为可访问变量,对象,函数的集合。 JavaScript 函数作用域: 作用域在函数内修改。 JavaScript 局部作用域 变量在函数内声明,变量为局部作用域。 局部变量:只能在函数内部访问。 // 此处不能调用 carName 变量 function myFunction() { var carName = “VolvoR…
-
js是如何实现浏览器打印功能的
最近接触到一个新需求,实现打印机打印小票的功能。打的一桌子小票(惭愧),不过也基本满足了业务上的需求,现在分享一下如何实现(好记性不如烂笔头) 先上代码 // 布局代码 //js 部分代码var f = document.getElementById(‘printf’); if (f) { document.getElementById(“print_content”).removeChild(f); } var printhtml = ` ${t…
-
js中如何比较数值大小
javascript中定义的var类型是弱类型,默认是String类型,在比较两个数字大小的时候默认比较的是两个字符串 在js中不能直接用”>”、”<“来直接判断大小 比如,在比较10和2时,按数字做比较10是比2大,可是按默认的字符串比较时,第一位的1和第一位的2比较是2大,就会出现2比10大的现象。 所以在javascript中比较两个数字的大小时需要转换类型后再进行比较。 例如 : if(3>4) 要写成 if(eval(3…
-
JavaScript字符和ASCII实现互相转换
这篇文章主要介绍了JavaScript字符和ASCII实现互相转换,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 在处理字符时,有时需要和ASCII码相互转换,博主便简单整理了一篇。 字符转ASCII 需要用变量的方法(js自带函数)。 单个字符转ASCII let x = ‘a’; x.charCodeAt(); //会输出’a’的ASCII码,即97 字符串转ASCII let x = …
-
js 获取扫码枪输入数据的介绍
这篇文章主要介绍了js 获取扫码枪输入数据的方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下 1、扫码枪相当于键盘输入设备,输入一连串数字后加一个enter键。但在实际开发中需要区分是扫描枪输入还是键盘用户输入,区别在于扫码枪输入很快。 let code = ”; let lastTime, nextTime; let lastCode, nextCode; window.document.onkeypress = (e) =…
-
JS实现前端动态分页码代码实例
这篇文章主要介绍了JS实现前端动态分页码代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 思路分析:有3种情况 第一种情况,当前页面curPage < 4 第二种情况,当前页面curPage == 4 第三种情况,当前页面curPage>4 此外,还要考虑,当前页码 curPage < pageTotal(总页码)-2,才显示 … 首先,先是前端的布局样式 <body> /*首先,在body中添加…
-
Vue自定义全局弹窗组件操作
页面中会有很多时候需要弹窗提示,我们可以写一个弹窗组件,但是如果每个页面都引入这个组件,太麻烦了,所以我们将它变成全局组件,需要用的时候直接通过JS调用即可,不需要在每个页面引入了 效果图 弹窗组件 新建一个弹窗的组件——popup.vue <template> <transition name=’fade’> <!– 蒙版 –> <div class=”mask” v-if=…