pseudo-arrays에서 JavaScript를 실제 배열로 변환하십시오
JavaScript에서는 getElementsByTagName으로 얻은 함수 및 요소 세트 (NODELIST)의 숨겨진 변수 인수는 실제 배열이 아니며 푸시와 같은 방법을 사용할 수 없습니다. 그러한 필요가 있으면 먼저 실제 배열로만 변환 할 수 있습니다.
인수의 경우 array.prototype.slice.call (arguments)을 사용할 수 있습니다. 전환의 목적을 달성하기 위해서는 노드리스트에게는 효과가 없을 것입니다. IE8 이하의 오류를보고합니다. JS 엔진에는 약간의 제한이 있다고 말할 수 있습니다.
따라서 Nodelist를 실제 배열로 변환 해야하는 경우 하향 호환 프로세스를 수행해야합니다.
코드 사본은 다음과 같습니다.
기능 realArray (c) {
노력하다 {
반환 array.prototype.slice.call (c);
} catch (e) {
var ret = [], i = 0, len = c.length;
for (; i <len; i ++) {
ret [i] = (c [i]);
}
반품 반환;
}
}
JavaScript 설정 홈페이지 기능
코드 사본은 다음과 같습니다.
<! doctype html>
<html>
<헤드>
<title> JavaScript 설정 "집으로 설정"및 "즐겨 찾기"(IE 및 Firefox 브라우저와 호환) </title>
<meta charset = "utf-8">
<script type = "text/javaScript">
함수 sethomepage () {
if (document.all) {
/*즉*/
document.body.style.behavior = 'url (#default#homepage)';
document.body.sethomepage (window.location.href);
} else if (window.sidebar) {
/*ff*/
if (window.netscape) {
노력하다 {
netscape.security.privilegemanager.enableprivilege ( "Universalxpconnect");
} catch (e) {
ALERT ( "이 작업은 브라우저에서 거부됩니다.이 기능을 활성화하려면 다음을 입력하십시오. 주소 표시 줄에 구성 한 다음 서명 된 항목을 입력하십시오.
}
}
var prefs = components.classes [ '@mozilla.org/preferences-service ;1'] getService(components.interfaces.nsiprefbranch);
prefs.setcharpref ( 'browser.startup.homepage', window.location.href);
} 또 다른 {
/*크롬 또는 기타*/
ALERT ( "브라우저는 홈페이지의 자동 설정을 지원하지 않으므로 브라우저 메뉴를 사용하여 수동으로 설정하십시오!");
}
}
</스크립트>
</head>
<body>
<a onclick = "sethomepage ()"href = "javaScript : void (0);"> 홈페이지로 설정 </a>
</body>
</html>
자바 스크립트 수집 기능
코드 사본은 다음과 같습니다.
<! doctype html>
<html>
<헤드>
<title> 데모 </title>
<meta charset = "utf-8">
<script src = "// code.jquery.com/jquery-1.11.0.min.js"> </script>
<script src = "// code.jquery.com/jquery-migrate-1.2.1.min.js"> </script>
<script type = "text/javaScript">
jquery.fn.addfavorite = function (l, h) {
return this.click (function () {
var t = jQuery (this);
if (jquery.browser.msie) {
Window.external.addfavorite (H, L);
} else if (jQuery.Browser.Mozilla || jQuery.browser.opera) {
t.attr ( "rel", "sidebar");
t.attr ( "title", l);
t.attr ( "href", h);
} 또 다른 {
Alert ( "Ctrl+D를 사용 하여이 페이지를 즐겨 찾기에 추가하십시오!");
}
});
};
$ (function () {
$ ( '#fav'). addfavite (document.title, location.href);
});
</스크립트>
</head>
<body>
<a href = "JavaScript :;" id = "fav">이 사이트를 저장 </a>
</body>
</html>
jQuery를 기반으로 필요에 따라 수정할 수 있습니다.
JavaScript 요소가 특정 속성 코드를 지원하는지 여부를 감지합니다.
코드 사본은 다음과 같습니다.
함수 요소 UpportSattribute (요소, 속성) {
var test = document.createelement (요소);
if (test in test) {
진실을 반환하십시오.
} 또 다른 {
거짓을 반환합니다.
}
};
용법:
코드 사본은 다음과 같습니다.
if (elementsUpportSattribute ( "textArea", "placeHolder") {
} 또 다른 {
// 폴백
}
네임 스페이스를 작성하고 사용합니다
코드 사본은 다음과 같습니다.
var global = {};
global.namespace = function (str) {
var arr = str.split ( '.'), o = global;
for (k = (arr [0] == "global")? 1 : 0; k <arr.length; k ++) {
o [arr [k]] = o [arr [k]] || {};
o = O [arr [k]];
}
}
사용 방법
코드 사본은 다음과 같습니다.
Global.namespace ( "Lang");
global.lang.test = function () {
// TODO
}
위의 것은이 기사에 관한 모든 것입니다. 나는 당신이 그것을 좋아하기를 바랍니다.