-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcommon.js
More file actions
61 lines (56 loc) · 1.6 KB
/
common.js
File metadata and controls
61 lines (56 loc) · 1.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
/**
* 根据id属性的值,返回对应的对象
* @param {string} id
*/
function my$(id) {
return document.getElementById(id);
}
//兼容代码
function getInnerText(element) {
if (typeof element.innerText == "undefined") {
return element.textContent;
} else return element.innerText;
}
function setInnerText(element, text) {
if (typeof element.innerText == "undefined") {
element.textContent = text;
} else element.innerText = text;
}
//为任意元素.绑定任意的事件, 任意的元素,事件的类型,事件处理函数
function addEventListener(element, type, fn) {
//判断浏览器是否支持这个方法
if (element.addEventListener) {
element.addEventListener(type, fn, false);
} else if (element.attachEvent) {
element.attachEvent("on" + type, fn);
} else {
element["on" + type] = fn;
}
}
//解绑事件的兼容
//为任意的一个元素,解绑对应的事件
function removeEventListener(element, type, fnName) {
if (element.removeEventListener) {
element.removeEventListener(type, fnName, false);
} else if (element.detachEvent) {
element.detachEvent("on" + type, fnName);
} else {
element["on" + type] = null;
}
}
//元素移动函数
function move(ele, target) {
clearInterval(ele.timeId);
var current = ele.offsetLeft;
ele.timeId = setInterval(function() {
var step = 10;
step = target > current ? step : -step;
current += step;
if (Math.abs(target - current) > Math.abs(step)) {
ele.style.left = current + "px";
} else {
clearInterval(ele.timeId);
ele.style.left = target + "px";
}
}, 20);
}