//楼层的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方法的更多相关文章

  1. 常用js方法整理common.js

    项目中常用js方法整理成了common.js var h = {}; h.get = function (url, data, ok, error) { $.ajax({ url: url, data ...

  2. 项目中常用js方法整理common.js

    抽空把项目中常用js方法整理成了common.js,都是网上搜集而来的,大家一起分享吧. var h = {}; h.get = function (url, data, ok, error) { $ ...

  3. 两种js方法发起微信支付:WeixinJSBridge,wx.chooseWXPay区别

    原文链接:https://www.2cto.com/weixin/201507/412752.html 1.为什么会有两种JS方法可以发起微信支付? 当你登陆微信公众号之后,左边有两个菜单栏,一个是微 ...

  4. 【问题】Asp.net MVC 的cshtml页面中调用JS方法传递字符串变量参数

    [问题]Asp.net MVC 的cshtml页面中调用JS方法传递字符串变量参数. [解决]直接对变量加引号,如: <button onclick="deleteProduct('@ ...

  5. 解决webkit浏览器中js方法中使用window.event提示未定义的问题

    这实际上是一个浏览器兼容性问题,根源百度中一大堆,简要说就是ie中event对象是全局变量,所以哪里都能使用到,但是webkit内核的浏览器中却不存在这个全局变量event,而是以一个隐式的局部变量的 ...

  6. ASP.Net 在Update Panel局部刷新后 重新绑定JS方法

    我们知道Asp.Net中的Update Panel可以完成页面的局部刷新(实质上是Ajax),但是局部刷新完后,此区域的控件上所绑定的JS方法就会失效,因为我们用如下方法来重新绑定. var prm ...

  7. JS调用OC方法并传值,OC调用JS方法并传值////////////////////////zz

     iOS开发-基于原生JS与OC方法互相调用并传值(附HTML代码)     最近项目里面有有个商品活动界面,要与web端传值,将用户在网页点击的商品id 传给客户端,也就是js交互,其实再说明白一点 ...

  8. 常用js方法

    function dateGetter(name, size, offset, trim) { offset = offset || 0; return function (date) { var v ...

  9. 与考试相关的JS方法

    var IsChange = 0;var ensure = 0;var timeCounter = (function () {//考试剩余时间 倒计时 var int; //var total = ...

随机推荐

  1. [JZOJ NOIP2018模拟10.20 A组]

    由于T3数据出锅,还不清楚自己的分数...估分150,前100已经拿到了,T3的50没拍过(写的就是暴力怎么拍),感觉很不稳 考试的时候就是特别的困,大概是因为早上在房间里腐败...腐败完了才睡觉 T ...

  2. javax.validation注解使用

    @Pattern(regexp = "^[0-9]*$",message = "完成比例(进度)必须是数字")

  3. Swift学习笔记(9):枚举

    目录: 基本语法 关联值 原始值 枚举为一组相关的值定义了一个共同的类型. ・可以给枚举成员指定原始值类型:字符串,字符,整型值或浮点数等 ・枚举成员可以指定任意类型的关联值存储到枚举成员中 ・枚举可 ...

  4. (转载) Android开发mac /dev/kvm is not found

    Android开发mac /dev/kvm is not found 标签: KVMAndroid开发KVM is not found芒果Android芒果iOS 2016-10-29 16:31 2 ...

  5. (转载) Android开发时,那些相见恨晚的工具或网站!

    huangmindong的专栏       目录视图 摘要视图 订阅 赠书 | 异步2周年,技术图书免费选      程序员8月书讯      项目管理+代码托管+文档协作,开发更流畅 Android ...

  6. jquery动态表格,动态添加表格行

    转载收藏于:https://www.cnblogs.com/zhangqs008/archive/2013/05/09/3618459.html 效果图:   Html:<html> &l ...

  7. UVa 10943 How do you add?【递推】

    题意:给出n,k,问恰好有k个不超过n的数的和为n的方案数有多少 可以隔板法来做 现在有n个小球放到k个盒子里面,盒子可以为空 那么就是n-k+1个缝隙,放上k-1个隔板(k-1个隔板就分成了k份) ...

  8. 安装 glusterfs yum源报错

    yum install glusterfs-server yum 一直报错 把/etc/yum.repos.d 备份 删除了所有文件,从测试机192..168.59.128上同步过来 一直报错 已加载 ...

  9. 做一个可复用的 echarts-vue 组件(延迟动画加载)

    在 vue 项目使用 echarts 的场景中,以下三点不容忽视:1. 可视化的数据往往是异步加载的:2. 若一个页面存在大量的图表( 尤其当存在关系图和地图时 ),往往会导致该页面的渲染速度很慢并可 ...

  10. 紫书 例题11-11 UVa 12661 (dihkstra变形)

    这道题主要比较权值的时候要改变一下,其他地方基本一样. 比较权值的时候要考虑边的时间与a, b 可以设相对于当前边的时间now, 则now = d[u] % (a+b), 也就是当前这个边进行到整个a ...