ホームページ php教程 php手册 Google 个性化主页类似,如何保存最后的布局三

Google 个性化主页类似,如何保存最后的布局三

Jun 13, 2016 am 11:21 AM
google 三つ パーソナライズする ホームページ 保存 どうやって レイアウト ほとんど

 

Google 个性化主页类似,如何保存最后的布局三

var Drag = {
                                dragged:false,
                                ao:null,
                                tdiv:null,

                                dragStart:function(){
                                        Drag.ao = event.srcElement;
                                        if((Drag.ao.tagName == "TD")||(Drag.ao.tagName == "TR")){
                                               
                                                Drag.ao = Drag.ao.offsetParent;
                                                Drag.ao.style.zIndex = 100;
                                        }else{
                                                return;
                                        }
                                       
                                        Drag.dragged = true;
                                        Drag.tdiv = document.createElement("div");
                                        Drag.tdiv.innerHTML = Drag.ao.outerHTML;
                                        Drag.ao.style.border = "1px dashed blue";
                                        Drag.tdiv.style.display = "block";
                                        Drag.tdiv.style.position = "absolute";
                                        Drag.tdiv.style.filter = "alpha(opacity = 70)";
                                        Drag.tdiv.style.cursor = "move";
                                        Drag.tdiv.style.border = "1px solid #000000";
                                        Drag.tdiv.style.width = Drag.ao.offsetWidth;
                                        Drag.tdiv.style.height = Drag.ao.offsetHeight;
                                        Drag.tdiv.style.top = Drag.getInfo(Drag.ao).top;
                                        Drag.tdiv.style.left = Drag.getInfo(Drag.ao).left;
                                        document.body.appendChild(Drag.tdiv);
                                        Drag.lastX = event.clientX;
                                        Drag.lastY = event.clientY;
                                        Drag.lastLeft = Drag.tdiv.style.left;
                                        Drag.lastTop = Drag.tdiv.style.top;
                                }// end function dragStart()
                                ,
                                draging:function(){//重要:判断MOUSE的位置
                                        if(!Drag.dragged||Drag.ao == null) return;
                                        var tX = event.clientX;
                                        var tY = event.clientY;
                                        Drag.tdiv.style.left = parseInt(Drag.lastLeft)+tX-Drag.lastX;
                                        Drag.tdiv.style.top = parseInt(Drag.lastTop)+tY-Drag.lastY;
                                        for(var i = 0;i                                                var parentCell = Drag.getInfo(parentTable.cells[i]);
                                                if(tX >=  parentCell.left  &&
                                                   tX                                                    tY >=  parentCell.top   &&
                                                   tY                                                         var subTables = parentTable.cells[i].getElementsByTagName("table");
                                                        if(subTables.length == 0){
                                                                if(tX >=  parentCell.left  &&
                                                                   tX                                                                    tY >=  parentCell.top   &&
                                                                   tY                                                                                 parentTable.cells[i].appendChild(Drag.ao);
                                                                }
                                                                break;
                                                        }
                                                        for(var j = 0; j                                                                var subTable = Drag.getInfo(subTables[j]);
                                                                if(tX >=  subTable.left  &&
                                                                   tX                                                                    tY >=  subTable.top   &&
                                                                   tY                                                                         parentTable.cells[i].insertBefore(Drag.ao,subTables[j]);
                                                                        break;
                                                                }else{
                                                                        parentTable.cells[i].appendChild(Drag.ao);
                                                                }
                                                   }
                                                }
                                        }
                                }// end function draging
                                ,
                                dragEnd:function(){
                                        if(!Drag.dragged) return;
                                        Drag.dragged = false;
                                        Drag.mm = Drag.repos(150,15);
                                        Drag.ao.style.borderWidth = "0px";
                                        //Drag.ao.style.borderTop = "1px solid #3366cc";
                                        Drag.tdiv.style.borderWidth = "0px";
                                        Drag.ao.style.zIndex = 1;
                                        //alert(Drag.ao.outerHTML);
                                        Drag.saveLayout();
                                        displaySaveLayout();
                                }// end function dragEnd()
                                ,
                                saveLayout:function()
                                {        // 把当前布局的位置放到 Cookie 里,按过 "保存页面布局" 后,存到后台
                                        for(var i = 0;i                                                var subTables = parentTable.cells[i].getElementsByTagName("table");
                                                for(var j = 0;j                                                        if(subTables[j].className !=  "dragTable") break;
                                                        // i_cell index of parentTable
                                                        // j_node index of parentTable.rows[0][i].childNodes
                                                        setCookie(subTables[j].id+"pos",i+"::"+j+"::"+subTables[j].id);
                                                }
                                        }
                                }// end function saveLayout()
                                ,
                                initTablePos:function()
                                {
                                        // 先从 Cookie 里得到值, 如果得不到再到 DB 中挑资料.
                                        var _tablepos = new Array();
                                        var _dragTableHtmlArray = new Array(); // 存放 drag table 里的 html 代码
                                        var _cookies = new Array();
                                        var _c = 0;
                                        // 先把画面上的内容拿到 Javascript 然后重新布局
                                        for(var i = 0;i                                                var subTables = parentTable.cells[i].getElementsByTagName("table");
                                                for(var j = 0;j                                                        if(subTables[j].className !=  "dragTable") break;
                                                        _cookies[_c] = getCookie(subTables[j].id+"pos");
                                                        _dragTableHtmlArray[subTables[j].id] = subTables[j].outerHTML;
                                                        _c++;
                                                }
                                               
                                                if (_cookies.toString().indexOf("::") != -1)
                                                {
                                                        parentTable.cells[i].innerHTML = ""; // 清除画面上拖动 Table
                                                }
                                               
                                        }
                                        _cookies.sort(); // sort 后按顺序加入 innerHTML
                                        if (_cookies.toString().indexOf("::") != -1)
                                        {                                       
                                                for (var _k = 0 ; _k <_cookies.length>                                                {
                                                        if (_cookies[_k] != null)
                                                        {
                                                                _tablepos = _cookies[_k].split("::");
                                                                //alert(_tablepos);
                                                                if (typeof(_tablepos) == "object")
                                                                {
                                                                        //alert(_dragTableHtmlArray[_tablepos[2]]);
                                                                        parentTable.cells[_tablepos[0]].innerHTML += _dragTableHtmlArray[_tablepos[2]];
                                                                        //parentTable.cells[_tablepos[0]].innerText += _dragTableHtmlArray[_tablepos[2]];
                                                                }
                                                        }                                               
                                                }
                                        }
                                        //_cookies.sort();
                                        //alert(_cookies);
                                        _dragTableHtmlArray = null;// release memoery
                                }// end function initDragTablePos()
                                ,
                                getInfo:function(o){//取得坐标
                                        var to = new Object();
                                        to.left = to.right = to.top = to.bottom = 0;
                                        var twidth = o.offsetWidth;
                                        var theight = o.offsetHeight;
                                        while(o !=  document.body){
                                                to.left += o.offsetLeft;
                                                to.top += o.offsetTop;
                                                o = o.offsetParent;
                                        }
                                        to.right = to.left+twidth;
                                        to.bottom = to.top+theight;
                                        return to;
                                }// end function getInfo()
                                ,
                                repos:function(aa,ab){
                                        var f = Drag.tdiv.filters.alpha.opacity;
                                        var tl = parseInt(Drag.getInfo(Drag.tdiv).left);
                                        var tt = parseInt(Drag.getInfo(Drag.tdiv).top);
                                        var kl = (tl-Drag.getInfo(Drag.ao).left)/ab;
                                        var kt = (tt-Drag.getInfo(Drag.ao).top)/ab;
                                        var kf = f/ab;
                                        return setInterval(
                                                function(){
                                                        if(ab                                                                clearInterval(Drag.mm);
                                                                Drag.tdiv.removeNode(true);
                                                                Drag.ao = null;
                                                                return;
                                                        }
                                                        ab--;
                                                        tl -= kl;
                                                        tt -= kt;
                                                        f -= kf;
                                                        Drag.tdiv.style.left = parseInt(tl)+"px";
                                                        Drag.tdiv.style.top = parseInt(tt)+"px";
                                                        Drag.tdiv.filters.alpha.opacity = f;
                                                }// end 动画效果
                                                ,aa/ab)
                                }// end function repos()
                                ,
                                inint:function(){//初始化
                                        Drag.initTablePos();
                                        for(var i = 0;i                                                var subTables = parentTable.cells[i].getElementsByTagName("table");
                                                for(var j = 0;j                                                        if(subTables[j].className !=  "dragTable") break;
                                                        subTables[j].rows[0].className = "dragTR";
                                                        subTables[j].rows[0].attachEvent("onmousedown",Drag.dragStart);
                                                }
                                        }
                                       
                                        document.onmousemove = Drag.draging;
                                        document.onmouseup = Drag.dragEnd;
                                }// end function inint()
                }//end of Object Drag

                Drag.inint();


このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Google Pixel 9とPixel 9 Proはリリース時にクリエイティブアシスタントAIを搭載すると噂される Google Pixel 9とPixel 9 Proはリリース時にクリエイティブアシスタントAIを搭載すると噂される Jun 22, 2024 am 10:50 AM

現在、この秋には 4 つの新しい Pixel スマートフォンが発売される予定です。要約すると、このシリーズは発売時にPixel 9とPixel 9 Proを搭載すると噂されています。ただし、Pixel 9 ProはPixel 8 ProではなくiPhone 16 Proのライバルになります(最新情報)

Google Pixel 9 Pro XLはデスクトップモードでテストされる Google Pixel 9 Pro XLはデスクトップモードでテストされる Aug 29, 2024 pm 01:09 PM

Google は、Pixel 8 シリーズで DisplayPort 代替モードを導入しており、新たに発売された Pixel 9 ラインナップにも搭載されています。これは主に、接続された画面でスマートフォンのディスプレイをミラーリングするためにありますが、デスクトップにも使用できます。

Google AI、開発者向けに Gemini 1.5 Pro と Gemma 2 を発表 Google AI、開発者向けに Gemini 1.5 Pro と Gemma 2 を発表 Jul 01, 2024 am 07:22 AM

Google AI は、Gemini 1.5 Pro 大規模言語モデル (LLM) を皮切りに、拡張コンテキスト ウィンドウとコスト削減機能へのアクセスを開発者に提供し始めました。以前は待機リストを通じて利用可能でしたが、完全な 200 万トークンのコンテキストウィンドウが利用可能になりました

Pixel 9 Pro XL の Google Tensor G4 は 原神 で Tensor G2 に遅れをとっています Pixel 9 Pro XL の Google Tensor G4 は 原神 で Tensor G2 に遅れをとっています Aug 24, 2024 am 06:43 AM

Googleは最近、Pixel 9ラインのTensor G4に関するパフォーマンスの懸念に対応しました。同社は、このSoCはベンチマークを上回るように設計されていないと述べた。代わりに、チームは Google が求めている分野でパフォーマンスを向上させることに重点を置きました。

Googleアプリのベータ版APK分解により、Gemini AIアシスタントに新たな拡張機能が追加されることが明らかになりました Googleアプリのベータ版APK分解により、Gemini AIアシスタントに新たな拡張機能が追加されることが明らかになりました Jul 30, 2024 pm 01:06 PM

最新アップデート (v15.29.34.29 ベータ版) の APK 分解を考慮すると、Google の AI アシスタント Gemini はさらに高性能になる予定です。このテクノロジー巨人の新しい AI アシスタントには、いくつかの新しい拡張機能が追加される可能性があると伝えられています。これらの拡張機能は

Google Pixel 9スマートフォンは7年間のアップデート契約にもかかわらずAndroid 15では発売されない Google Pixel 9スマートフォンは7年間のアップデート契約にもかかわらずAndroid 15では発売されない Aug 01, 2024 pm 02:56 PM

Pixel 9 シリーズは、8 月 13 日のリリースが予定されており、もうすぐ登場します。最近の噂によると、Pixel 9、Pixel 9 Pro、Pixel 9 Pro XLは、128 GBのストレージから始まるPixel 8とPixel 8 Pro(Amazonで現在749ドル)をミラーリングします。

新しい Google Pixel デスクトップ モードは、Motorola Ready For と Samsung DeX の代替として新鮮なビデオで紹介されています 新しい Google Pixel デスクトップ モードは、Motorola Ready For と Samsung DeX の代替として新鮮なビデオで紹介されています Aug 08, 2024 pm 03:05 PM

Android Authority が、Google が Android 14 QPR3 Beta 2.1 内に隠していた新しい Android デスクトップ モードをデモンストレーションしてから数か月が経過しました。 Google が Pixel 8 と Pixel 8 に DisplayPort Alt Mode サポートを追加することに追随して登場

流出した Google Pixel 9 の広告には、「Add Me」カメラ機能を含む新しい AI 機能が示されています 流出した Google Pixel 9 の広告には、「Add Me」カメラ機能を含む新しい AI 機能が示されています Jul 30, 2024 am 11:18 AM

Pixel 9 シリーズに関連するさらなるプロモーション資料がオンラインに流出しました。参考までに、新たなリークは、91mobiles が Pixel Buds Pro 2 と Pixel Watch 3 または Pixel Watch 3 XL も紹介した複数の画像を共有した直後に到着しました。この時

See all articles