Jquery 作者 John Resig 自身のカプセル化された JavaScript 共通関数_JavaScript スキル

WBOY
リリース: 2016-05-16 18:42:08
オリジナル
834 人が閲覧しました
コードをコピー コードは次のとおりです:

//要素のスタイル値を取得します。
関数 getStyle(elem,name){
if(elem.style[name]){
return elem.style[name];
}else if(elem.currentStyle){
return elem.currentStyle[name];
}else if(document.defaultView&&document.defaultView.getComputedStyle){
name=name.replace(/([A-Z])/g,”-$1″); >name=name.toLowerCase();
var s=document.defaultView.getComputedStyle(elem,"");
return s&&s.getPropertyValue(name);
return null
}
}
//このページを基準とした要素の x 座標と y 座標を取得します。
function pageX(elem){
return elem.offsetParent?(elem.offsetLeft pageX(elem.offsetParent)):elem.offsetLeft;
}
function pageY(elem){
return elem.offsetParent?(elem.offsetTop pageY(elem.offsetParent)):elem.offsetTop;
}
//親要素を基準とした要素の x 座標と y 座標を取得します。
functionparentX(elem){
return elem.parentNode==elem.offsetParent?elem.offsetLeft:pageX(elem)-pageX(elem.parentNode)
}
functionparentY(elem); {
return elem.parentNode==elem.offsetParent?elem.offsetTop:pageY(elem)-pageY(elem.parentNode);
}
// を使用して配置された要素の x 座標と y 座標を取得します。 css 。
function posX(elem){
return parseInt(getStyle(elem,”left”));
}
function posY(elem){
return parseInt(getStyle(elem,”top) ”));
}
//要素の位置を設定します。
関数 setX(elem,pos){
elem.style.left=pos ”px”;
}
関数 setY(elem,pos){
elem.style.top=pos "px";
}
//要素の X 座標と Y 座標を増やします。
関数 addX(elem,pos){
set(elem,(posX(elem) pos));
}
関数 addY(elem,pos){
set(elem,( posY(elem) pos));
}
//CSS を使用して要素の高さと幅を取得し、サイズを制御します
function getHeight(elem){
return parseInt(getStyle(elem, "height") );
}
function getWidth(elem){
return parseInt(getStyle(elem,"width"));
}
// 要素を取得可能、完全な高さand width
function getFullHeight(elem){
if(getStyle(elem,”display”)!=”none”){
return getHeight(elem)||elem.offsetHeight
}else; {
var old=resetCss(elem,{display:”block”,visibility:”hidden”,position:”absolute”});
var h=elem.clientHeight||getHeight(elem); >restoreCss( elem,old);
return h;
}
}
function getFullWidth(elem){
if(getStyle(elem,”display”)!=”none”) {
return getWidth(elem)||elem.offsetWidth;
}else{
var old=resetCss(elem,{display:”block”,visibility:”hidden”,position:”absolute”} );
var w=elem.clientWidth||getWidth(elem);
return w;
}
;古いCSSを保存します。
関数resetCss(elem,prop){
var old={};
for(var i in prop){
old[i]=elem.style[i];
elem.style[i]=prop[i];
}
古いものを返す;
}
関数 stopCss(elem,prop){
for(var i in prop) {
elem.style[i]=prop[i];
}
}
//表示と非表示
function show(elem){
elem.style.display= elem.$oldDisplay||”;
}
関数 Hide(elem){
var curDisplay=getStyle(elem,”display”);
elem.$oldDisplay=curDisplay;
elem.style.display=”none”
}
}
//透明度を設定する
function setOpacity(elem,num); 🎜> if(elem.filters){
elem.style.filter=”alpha(opacity=” num ”)”
}else{
elem.style.opacity=num/100; >}
}
//Slide
function slideDown(elem){
var h=getFullHeight(elem);
elem.style.height=”0px”; elem) ;
for(var i=0;inew function(){
var pos=i; style.height=(pos/100*h) ”px”;},(pos*10));
}
}
}
//Gradient
関数 fadeIn(elem) {
show(elem);
setOpacity(elem,0);
for(var i=0;i新しい関数(){
var pos =i;
setTimeout(function(){setOpacity(elem,pos);},(pos 1)*10);
}
}
// を取得します。ページ全体上のマウス カーソルの相対位置。
function getX(e){
e=e||window.event;
return e.pageX||e.clientX document.body.scrollLeft;
}
function getY(e ){
e=e||window.event;
return e.pageY||e.clientY document.body.scrollTop;
}
// に対するマウス カーソルの位置を取得します。現在の要素。
function getElementX(e){
return (e&&e.layerX)||window.event.offsetX;
}
function getElementY(e){
return (e&&e.layerY)|| window.event.offsetY;
}
//ページの高さと幅を取得します
function getPageHeight(){
var de=document.documentElement
return document.body.scrollHeight; || (de&de.scrollHeight);
function getPageWidth(){
var de=document.documentElement;|(de&de.scrollWidth); }
//スクロールバーの位置を取得します。
functionscrollX(){
var de=document.documentElement;
return self.pageXOffset||(de&&de.scrollLeft)||document.body.scrollLeft;
}
functionscrollY(){
var de=document.documentElement;
return self.pageYOffset||(de&&de.scrollTop)||document.body.scrollTop;
}
//ビューの高さと高さを取得します。
function windowHeight() {
var de = document.documentElement;
return self.innerHeight||(de && de.offsetHeight)||document.body.offsetHeight;
}
function windowWidth() {
var de = document.documentElement;
return self.innerWidth||( de && de.offsetWidth )||document.body.offsetWidth;
}
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!