webstrom
1.extact 抽取函数:选中代码,右键,refactor-extact
 function matchPicLink() {
var $match = $('#match');
var mWidth = Math.floor($match.width());
var mWidthHalf = Math.floor(mWidth / 2);
$match.css({
"width": mWidth,
// "height": Math.floor(mWidth * 757 / 692) //按原宽高比缩放,height=mWidth* height0/width0
"height": computeHeight(mWidth, 692, 757)
});
var mHeight = $match.height();
var mHeightHalf = Math.floor(mHeight / 2);
$(".poloShirt").css({
"width": Math.floor(mHeight * 3 / 5),
"background": "rgba(9,200,200,0.5)",
"height": mHeightHalf
});
$(".poloShirt").click(function () {
window.location.href = 'https://&0&商品id';
});
$(".vest").css({
"width": mWidthHalf,
"background": "rgba(9,200,200,0.5)",
"height": mHeightHalf
});
$(".vest").click(function () {
window.location.href = 'https://&0&商品id';
});
}

抽取函数,传入参数。哪些可以传参

因为子类有多个,所有将子类作为数组传入;并且子类含有很多属性和方法,如css以及click,所有数组中每个对象是json,即{key:value},调用的时候就是obj.key,所以将key作为参数传入。综合来看,就是

 childClassObjs[i]={cName:cName,
ratioMoleculeW :ratioMoleculeW
ratioMoleculeH :ratioMoleculeH
url:url
}
 function picLinkInit(parentClassName, imgW, imgH, childClassObjs) {
var $match = $(parentClassName);
var mWidth = Math.floor($match.width()); var mHeight = computeHeight(mWidth, imgW, imgH);
$match.css({
"width": mWidth,
"height": mHeight
});
for (var i = 0; i < childClassObjs.length; i++) {
var childClassObj = childClassObjs[i]; $(childClassObj.cName).css({
"width": Math.floor(mWidth * childClassObj.ratioMoleculeW / childClassObj.ratioDenominatorW),
// "background": "rgba(9,200,200,0.5)",
"height": Math.floor(mHeight * childClassObj.ratioMoleculeH / childClassObj.ratioDenominatorH)
});
/* if (childClassObj.url) {
$(childClassObj.cName).click(function () {
window.location.href =childClassObj.url;
});
}*/
(function (i) {
if ( childClassObjs[i].url) {
$( childClassObjs[i].cName).click(function () {
window.location.href = childClassObjs[i].url;
});
}
})(i); }

调用的时候是:

 function matchPicLink4() {
picLinkInit("#match4", 692, 677, [
{
"cName": ".aca4coat1",
"ratioMoleculeW": 16,
"ratioDenominatorW": 24,
"ratioMoleculeH": 7,
"ratioDenominatorH": 24,
"url": "https://&0&0&4675"
}, {
"cName": ".aca4coat2",
"ratioMoleculeW": 10,
"ratioDenominatorW": 24,
"ratioMoleculeH": 7,
"ratioDenominatorH": 24,
"url": "https://&0&0&4675"
}
]);
}

webstorm抽取函数的更多相关文章

  1. 『Numpy学习指南』排序&索引&抽取函数介绍

    排序: numpy.lexsort(): numpy.lexsort()是个排字典序函数,因为很有意思,感觉也蛮有用的,所以单独列出来讲一下: 强调一点,本函数只接受一个参数! import nump ...

  2. eclipse 重构代码自动抽取函数

    1.选择重构代码段 2.重构 – 抽取方法 3.命名重构代码段抽取的方法 4.使用抽取的方法

  3. WebStorm 常用功能的使用技巧分享

    WebStorm 是 JetBrain 公司开发的一款 JavaScript IDE,使用非常方便,可以使编写代码过程更加流畅. 本文在这里分享一些常用功能的使用技巧,希望能帮助大家更好的使用这款强大 ...

  4. WebStorm 常用功能

    WebStorm 常用功能的使用技巧分享 WebStorm 是 JetBrain 公司开发的一款 JavaScript IDE,使用非常方便,可以使编写代码过程更加流畅. 本文在这里分享一些常用功能的 ...

  5. R语言-编写自定义函数 ZZ

    一.函数构造器 每一个R函数都包括三个部分:函数名,程序主体以及参数集合,在编写自定义R函数时,需要将三个部分各自储存在一个R对象中.这里需要使用function函数,形如: my_function& ...

  6. intellijidea课程 intellijidea神器使用技巧 4-2 抽取

    1 抽取变量 Ctrl alt V 抽取变量 Ctrl alt C 抽取静态变量  顺带创建静态方法 Crrl alt F 抽取成员变量 2 抽取方法参数 Ctrl alt P 抽取参数,到方法体中 ...

  7. WebStorm 使用技巧

    常用快捷键 代码编辑 ctrl + d:复制行 ctrl + y:删除行 ctrl + x:剪切行 ctrl + shift + ↑: 行移动 ctrl + shift + enter: 换行 ctr ...

  8. 自己实现一个类似 jQuery 的函数库

    假如我们有一个需求,需要给元素添加样式类,使用原生的JS很容易搞定. 1 抽取函数 function addClass(node, className){ node.classList.add(cla ...

  9. 使用R语言-RStudio快捷键

    控制台 功能 Windows & Linux Mac 移动鼠标到控制台 Ctrl+2 Ctrl+2 控制台清屏 Ctrl+L Command+L 移动鼠标至第一行 Home Command+L ...

随机推荐

  1. jQuery+css3 弹幕

    写了个基于jQuery+css3的弹幕功能,此功能面向手机wap,利用改变位移做弹幕功能会使一些性能低的手机浏览器卡,所以用了css3,此功能不支持非webkit内核浏览器 html部分 自己设置样式 ...

  2. Golang gzip的压缩和解压

    package src import ( "bytes" "compress/gzip" ) func GzipEncode(in []byte) ([]byt ...

  3. AppBox升级进行时 - Any与All的用法(Entity Framework)

    AppBox 是基于 FineUI 的通用权限管理框架,包括用户管理.职称管理.部门管理.角色管理.角色权限管理等模块. 属于某个角色的用户列表(Any的用法) 使用Subsonic,我们有两种方法获 ...

  4. SQLite剖析之异步IO模式、共享缓存模式和解锁通知

    1.异步I/O模式    通常,当SQLite写一个数据库文件时,会等待,直到写操作完成,然后控制返回到调用程序.相比于CPU操作,写文件系统是非常耗时的,这是一个性能瓶颈.异步I/O后端是SQLit ...

  5. 86 ipmitools-查看硬件信息工具

    1.简介 IPMI(Intelligent Platform Management Interface)即智能平台管理接口是使硬件管理具备"智能化"的新一代通用接口标准.用户可以利 ...

  6. 微信JSSDK javascript 开发 代码片段,仅供参考

    最全面最专业的微信公众平台开发教程:http://www.cnblogs.com/txw1958/p/weixin-js-sdk-demo.html 比较完整的分享教程:http://www.cnbl ...

  7. UIDynamic(简单介绍)

    一.简单介绍 1.什么是UIDynamic UIDynamic是从iOS 7开始引入的一种新技术,隶属于UIKit框架 可以认为是一种物理引擎,能模拟和仿真现实生活中的物理现象 如:重力.弹性碰撞等现 ...

  8. php无法创建中文名的文件

    需要使用iconv强制转换后才可以.

  9. mybatis一个怪异的问题: Invalid bound statement not found

    ssm中报一下错误: invalid bound statement (not found): me.tspace.pm.dao.userdao.getuser    at org.apache.ib ...

  10. 关于分页接口设计(下拉刷新上拉加载原理,解决page count请求重复数据的问题)