临时的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 = ...
随机推荐
- SharePoint 网站中定义的页面背景图片不起作用
If you are working on custom SharePoint 2013 master pages, designs and/or CSS, these little CSS clas ...
- (转载)你真的理解Android AIDL中的in,out,inout么?
前言 这其实是一个很小的知识点,大部分人在使用AIDL的过程中也基本没有因为这个出现过错误,正因为它小,所以在大部分的网上关于AIDL的文章中,它都被忽视了——或者并没有,但所占篇幅甚小,且基本上都是 ...
- rman备份简介
登陆rman: [oracle@oracle ~]$ rman target / connected to target database: FSDB (DBID=1179347208) 执行全备: ...
- 条件变量本质-Problem statement-while not( P ) do skip
条件变量相当于订阅-发布机制: 或者相当于同步的通知机制: 订阅和发布具有先后顺序:所以需要互斥量来维护顺序. 顺序不对,存在信号丢失问题. Problem statement[edit] For m ...
- [国家集训队]最长双回文串 (PAM)回文自动机
Code: // luogu-judger-enable-o2 #include <cstdio> #include <algorithm> #include <cstr ...
- 路飞学城Python-Day4
29.二进制转换计算机使用的语言就是二进制古时候,人们使用信鸽.书信.千里马等方式.但是这样的方式是不可靠的,时间也长.古时候的军方,通过烽火狼烟进行简单的信息交流 30.二进制的转换(II)8 4 ...
- 微信小程序优化
setData setData 是小程序开发中使用最频繁的接口,也是最容易引发性能问题的接口.在介绍常见的错误用法前,先简单介绍一下 setData 背后的工作原理. 工作原理 小程序的视图层目前使用 ...
- BZOJ 1355[Baltic2009]Radio Transmission(KMP)
题意 给你一个字符串,它是由某个字符串不断自我连接形成的. 但是这个字符串是不确定的,现在只想知道它的最短长度是多少. (n<=1000000) 题解 这种求最小循环节的题一般是KMP. 因为有 ...
- 虚拟机virtualbox,直接复制本机虚拟硬盘vdi使用, 会提示错误的解决方法
提示语句为: 打开硬盘文件D:\Virtualbox\debian9 - 副本.vdi 失败. 明细(D) Cannot register the hard disk ‘D:\Virtualbox\d ...
- webpack2.X、Vue学习以及将两者相结合
在家的闲暇时间来完善自己的前端知识. 经过两三天的学习,按照webpack文档学习,vue文档学习,最后实现了两者结合的目标. webpack 按照网站上guide的流程依次学习 1.使用npm安装w ...