临时的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 = ...
随机推荐
- 简单的floyd——初学
前言: (摘自https://www.cnblogs.com/aininot260/p/9388103.html): 在最短路问题中,如果我们面对的是稠密图(十分稠密的那种,比如说全连接图),计算多 ...
- HTML与CSS学习记录
title: HTML与CSS学习记录 toc: true date: 2018-09-10 14:04:59 <HTML与CSS进阶教程读书笔记> HTML基础知识 HTML与XHTML ...
- Codeforces 703D Mishka and Interesting sum 离线+树状数组
链接 Codeforces 703D Mishka and Interesting sum 题意 求区间内数字出现次数为偶数的数的异或和 思路 区间内直接异或的话得到的是出现次数为奇数的异或和,要得到 ...
- 乌班图 之 apt命令 及 VMware共享文件夹
apt是Advanced Packaging Tool ,是Ubuntu下的一个安装包管理工具 大部分软件的安装.更新.卸载 都是利用apt命令来实现 直接在终端输入apt即可查阅命令的帮助信息 常用 ...
- 解决maven 无法下载java-memcached的依赖问题
1.进入https://github.com/gwhalin/Memcached-Java-Client/downloads 下载java-memcached的jar包. 2.使用cmd进入maven ...
- MySQL数据库学习记录
SELECT子句顺序
- dede内链怎么优化,Dedecms内部链接优化技巧
dede内链怎么优化,dedecms内部链接优化技巧 使用dedecms的过程中发现,可以通过dedecms的文档关键词维护功能.发表文章时候的关键词添加功能(也可以自动获取)以及核心设置里面的是否使 ...
- dashboard安装
1,安装程序包 # yum install -y openstack-dashboard 2,修改配置文件 # vim /etc/openstack-dashboard/local_settings ...
- Obfuscating computer code to prevent an attack
A method and system for obfuscating computer code of a program to protect it from the adverse effect ...
- 联想z470 win7 64位双系统继续恢复镜像法安装黑苹果10.9.3
之前的方法是安装 10.9 http://blog.csdn.net/kissing_huo/article/details/23559239的 苹果最新的swift的语言 出来 必须最新的xcod ...