临时的js方法
- //楼层的js
var scroChange;- //楼层跳转
- function FloorGo(domId){//传入目标的id
- clearInterval(scroChange);
- var scrollHeight = $(document).height();//获取滚动条可以滚动的所有距离
- var windowHeight = $(window).height();//获取屏幕高度
- var domIdTop=$('#'+domId+'').offset().top-150;//获取目标的滚动条高度
- scroChange=setInterval(function(){
- var win_scT=$(window).scrollTop();//获取当前滚动条高度
- var scT_pc=domIdTop-win_scT;//获取目标与当前滚动条的差值
- if(scT_pc<0){//如果差值小于0;表示目标在目前滚动条的上方
- var scT_change1=Math.abs(scT_pc/3);
- $(window).scrollTop(win_scT-scT_change1);
- var pcz=Math.abs(win_scT-scT_change1-domIdTop);
- // console.log(pcz);
- //如果目前的高度和目标的高度在两个像素以内则停止滚动
- if(pcz<3){
- clearInterval(scroChange);
- }
- }else{//如果差值不小于0;表示目标在目前滚动条的下方
- if(win_scT + windowHeight > scrollHeight-10){//如果滚动滚动到页面最底部10像素以内,停止滚动
- clearInterval(scroChange);
- }
- var scT_change1=Math.abs(scT_pc/3);
- $(window).scrollTop(win_scT+scT_change1);
- var pcz=Math.abs(win_scT+scT_change1-domIdTop);
- //如果目前的高度和目标的高度在两个像素以内则停止滚动
- if(pcz<3){
- clearInterval(scroChange);
- }
- }
- },10)
- }
- //判断是否https 协议
- var isHttps = /^https:$/.test(location.protocol) ? true : false;
- function formatPrice(src, pos) {
- var f_x = parseFloat(src);
- if (isNaN(f_x)) {
- return false;
- }
- var f_x = Math.floor(src * Math.pow(10, pos)) / Math.pow(10, pos);
- var s_x = f_x.toString();
- var pos_decimal = s_x.indexOf('.');
- if (pos_decimal < 0) {
- pos_decimal = s_x.length;
- s_x += '.';
- }
- while (s_x.length <= pos_decimal + 2) {
- s_x += '0';
- }
- return s_x;
- }
- /**
- * 求数组中最大值和最小值
- *
- * @param {Object}
- * arr
- * @param {Object}
- * maximin
- * @return {TypeName}
- */
- function getMaximin (arr,maximin) {
- if (maximin == "max") {
- return Math.max.apply(Math, arr);
- }else if (maximin == "min") {
- return Math.min.apply(Math, arr);
- }
- }
- /**
- * 深拷贝
- * @param {Object} obj
- * @returns {Object} clone的对象
- */
- export function deepClone(obj) {
- if (obj === null) return obj
- if (typeof obj !== 'object') return obj
- const objClone = new obj.constructor()
- for (const key in obj) {
- if (obj.hasOwnProperty(key)) {
- // 判断ojb子元素是否为对象,如果是,递归复制
- if (obj[key] && typeof obj[key] === 'object') {
- objClone[key] = deepClone(obj[key])
- } else {
- // 如果不是,简单复制
- objClone[key] = obj[key]
- }
- }
- }
- return objClone
- }
临时的js方法的更多相关文章
- 常用js方法整理common.js
项目中常用js方法整理成了common.js var h = {}; h.get = function (url, data, ok, error) { $.ajax({ url: url, data ...
- 项目中常用js方法整理common.js
抽空把项目中常用js方法整理成了common.js,都是网上搜集而来的,大家一起分享吧. var h = {}; h.get = function (url, data, ok, error) { $ ...
- 两种js方法发起微信支付:WeixinJSBridge,wx.chooseWXPay区别
原文链接:https://www.2cto.com/weixin/201507/412752.html 1.为什么会有两种JS方法可以发起微信支付? 当你登陆微信公众号之后,左边有两个菜单栏,一个是微 ...
- 【问题】Asp.net MVC 的cshtml页面中调用JS方法传递字符串变量参数
[问题]Asp.net MVC 的cshtml页面中调用JS方法传递字符串变量参数. [解决]直接对变量加引号,如: <button onclick="deleteProduct('@ ...
- 解决webkit浏览器中js方法中使用window.event提示未定义的问题
这实际上是一个浏览器兼容性问题,根源百度中一大堆,简要说就是ie中event对象是全局变量,所以哪里都能使用到,但是webkit内核的浏览器中却不存在这个全局变量event,而是以一个隐式的局部变量的 ...
- ASP.Net 在Update Panel局部刷新后 重新绑定JS方法
我们知道Asp.Net中的Update Panel可以完成页面的局部刷新(实质上是Ajax),但是局部刷新完后,此区域的控件上所绑定的JS方法就会失效,因为我们用如下方法来重新绑定. var prm ...
- JS调用OC方法并传值,OC调用JS方法并传值////////////////////////zz
iOS开发-基于原生JS与OC方法互相调用并传值(附HTML代码) 最近项目里面有有个商品活动界面,要与web端传值,将用户在网页点击的商品id 传给客户端,也就是js交互,其实再说明白一点 ...
- 常用js方法
function dateGetter(name, size, offset, trim) { offset = offset || 0; return function (date) { var v ...
- 与考试相关的JS方法
var IsChange = 0;var ensure = 0;var timeCounter = (function () {//考试剩余时间 倒计时 var int; //var total = ...
随机推荐
- httputil用http获取请求的工具类
package com.xiaocan.demo.util; import java.io.IOException; import java.io.InputStream; import java.u ...
- Charles抓取微信小程序数据 以及 其它应用网站数据
为了抓取小程序数据所以使用Charles来抓取,下面介绍下使用方法(mac环境下使用).使用Charles可以非常方便的抓取Http/Https请求.官方dmg下载地址:点击此处下载 Charles抓 ...
- (转载)你真的理解Android AIDL中的in,out,inout么?
前言 这其实是一个很小的知识点,大部分人在使用AIDL的过程中也基本没有因为这个出现过错误,正因为它小,所以在大部分的网上关于AIDL的文章中,它都被忽视了——或者并没有,但所占篇幅甚小,且基本上都是 ...
- PC比价软件
方法:从百度中搜索比较软件排行,并且根据将搜索时间缩小在一年内.统计前面一页结果网站中的比价软件. 名称 备注 统计 淘淘搜购物助手 淘宝购物比价神器 1 省省比价软件 主流网购商城进行横向比较的智能 ...
- shell-3.bash的基本功能:多命令顺序执行与管道符
1. 2.
- swift语言点评十四-继承
Overriding A subclass can provide its own custom implementation of an instance method, type method, ...
- SpringBoot学习笔记(9)----SpringBoot中使用关系型数据库以及事务处理
在实际的运用开发中,跟数据库之间的交互是必不可少的,SpringBoot也提供了两种跟数据库交互的方式. 1. 使用JdbcTemplate 在SpringBoot中提供了JdbcTemplate模板 ...
- eclipse的maven工程视图切换
上面图切换成下面图: 点击eclipse右上角,如下图红圈,然后在选择javaEE这样就切换成javaEE视图了
- Mathab和Python的numpy中的数组维度
Matlab和Python的numpy在维度索引方面的不同点: 1.索引的起始点不同:Matlab起始位置的索引为1,Python为0. 2.索引的括号不同:Matlab中元素可以通过小括号表示索引, ...
- 多任务-进程之进程池Pool
1.什么是池? 首先从字面上看,池代表着一个容器,用来承载着某些内容的容器,了解到这里,就对进程池有了一个初步的轮廓. 2.什么是进程池Pool? (1)利用现实中的事物来理解: 对于小白初学者,接触 ...