この記事の例では、Jquery がウォーターフォール フロー レイアウトを実装する方法について説明します。皆さんの参考に共有してください。詳細は以下の通りです。
ウォーターフォールフローレイアウトは最近とても人気があります。私のように作り方を知りたい人がたくさんいます。インターネットでたくさんの参考資料を探し、いくつかの面を試した結果、今日それを作成するために書きました。私は jQuery を使用しました (もちろん、ソース js コードを使用した方が効率は高くなりますが、多くの人はソース js に習熟していません)。
<!doctype html> <html> <head> <meta charset="utf-8"> <title>Jquery瀑布流布局(每行代码都有详细注释)-作者:刘晓帆</title> <style type="text/css"> body, ul, li, h3 { margin: 0; padding: 0; list-style: none; font: bold 12px "微软雅黑"; } /*瀑布流布局样式*/ #lxf-box { position: relative; } #lxf-box li { position: absolute; background: #fff; border: solid 1px #ccc; text-align: center; padding: 10px; left: 0px; top: 0; } h3 { padding-top: 8px; } img { width: 200px; height: auto; display: block; border: 0 } /*css3动画*/ li { -webkit-transition: all .7s ease-out .1s; -moz-transition: all .7s ease-out; -o-transition: all .7s ease-out .1s; transition: all .7s ease-out .1s } </style> <script src="/js/jquery-1.6.4.min.js" type="text/javascript"></script> </head> <body> <ul id="lxf-box"> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/OLqypfV.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/msbvKWyQQzZuZy.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/WbWXwqpcxqcued.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/rabGVkIGq.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/rSmEiZGlAvvuZ.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/YewRtz.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/STVDndiZsIduZyLv.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/mWFuVrzCzpPdzdje.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/MsZvAyOFukxdzdjefXwi.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/OEycuedk.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/YwabRquVKrxd.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/+nwbuJpc.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/qymffF.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/DvKZdxCjtfqMv.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/SOmyOQZtlUfdzdjefXwi.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/REsUNXUvAkrdzdj.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/DQJwrFnDpgtdz.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/eJupzWlGPxz.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/IWpjipjp.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/OXsDgKacJeTdzdjefXwi.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/QPIzxiMkmlHdzdjefX.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/mrTNaJTaQyluZyLvvnWS.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/mqXLNuWiPrbdz.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/MiEJRJdimxPdzdjefXw.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/CczowVxqM.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/rabGVkIGq.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> <li><a href="/"><img src="/static/imghwm/default1.png" data-src="/demo/waterfall/zwPqjasxHYvdz.jpg" class="lazy" alt="Jquery はウォーターフォール フロー レイアウトを実装します (詳細なコメント付き)_jquery" ></a> <h3 id="图片标题">图片标题</h3> </li> </ul> <script> /* 原理: 1.把所有的li的高度值放到数组里面 2.第一行的top都为0 3.计算高度值最小的值是哪个li 4.把接下来的li放到那个li的下面 */ var margin = 10;//这里设置间距 var li=$("li");//这里是区块名称 var li_W = li[0].offsetWidth+margin; //取区块的实际宽度(包含间距,这里使用源生的offsetWidth函数,不适用jQuery的width()函数是因为它不能取得实际宽度,例如元素内有pandding就不行了) function liuxiaofan(){//定义成函数便于调用 var h=[];//记录区块高度的数组 var n = document.documentElement.offsetWidth/li_W|0; //窗口的宽度除以区块宽度就是一行能放几个区块 for(var i = 0;i < li.length;i++) {//有多少个li就循环多少次 li_H = li[i].offsetHeight;//获取每个li的高度 if(i < n) {//n是一行最多的li,所以小于n就是第一行了 h[i]=li_H;//把每个li放到数组里面 li.eq(i).css("top",0);//第一行的Li的top值为0 li.eq(i).css("left",i * li_W); //第i个li的左坐标就是i*li的宽度 } else{ min_H =Math.min.apply(null,h) ;//取得数组中的最小值,区块中高度值最小的那个 minKey = getarraykey(h, min_H);//最小的值对应的指针 h[minKey] += li_H+margin ;//加上新高度后更新高度值 li.eq(i).css("top",min_H+margin);//先得到高度最小的Li,然后把接下来的li放到它的下面 li.eq(i).css("left",minKey * li_W); //第i个li的左坐标就是i*li的宽度 } $("h3").eq(i).text("编号:"+i+",高度:"+li_H);//把区块的序号和它的高度值写入对应的区块H3标题里面 } } /* 使用for in运算返回数组中某一值的对应项数(比如算出最小的高度值是数组里面的第几个) */ function getarraykey(s, v) {for(k in s) {if(s[k] == v) {return k;}}} /*这里一定要用onload,因为图片不加载完就不知道高度值*/ window.onload = function() {liuxiaofan();}; /*浏览器窗口改变时也运行函数*/ window.onresize = function() {liuxiaofan();}; </script> </body> </html>
この記事が皆さんの jquery プログラミング設計に役立つことを願っています。

はい、JavaScriptのエンジンコアはCで記述されています。1)C言語は、JavaScriptエンジンの開発に適した効率的なパフォーマンスと基礎となる制御を提供します。 2)V8エンジンを例にとると、そのコアはCで記述され、Cの効率とオブジェクト指向の特性を組み合わせて書かれています。3)JavaScriptエンジンの作業原理には、解析、コンパイル、実行が含まれ、C言語はこれらのプロセスで重要な役割を果たします。

JavaScriptは、Webページのインタラクティブ性とダイナミズムを向上させるため、現代のWebサイトの中心にあります。 1)ページを更新せずにコンテンツを変更できます。2)Domapiを介してWebページを操作する、3)アニメーションやドラッグアンドドロップなどの複雑なインタラクティブ効果、4)ユーザーエクスペリエンスを改善するためのパフォーマンスとベストプラクティスを最適化します。

CおよびJavaScriptは、WebAssemblyを介して相互運用性を実現します。 1)CコードはWebAssemblyモジュールにコンパイルされ、JavaScript環境に導入され、コンピューティングパワーが強化されます。 2)ゲーム開発では、Cは物理エンジンとグラフィックスレンダリングを処理し、JavaScriptはゲームロジックとユーザーインターフェイスを担当します。

JavaScriptは、Webサイト、モバイルアプリケーション、デスクトップアプリケーション、サーバー側のプログラミングで広く使用されています。 1)Webサイト開発では、JavaScriptはHTMLおよびCSSと一緒にDOMを運用して、JQueryやReactなどのフレームワークをサポートします。 2)ReactNativeおよびIonicを通じて、JavaScriptはクロスプラットフォームモバイルアプリケーションを開発するために使用されます。 3)電子フレームワークにより、JavaScriptはデスクトップアプリケーションを構築できます。 4)node.jsを使用すると、JavaScriptがサーバー側で実行され、高い並行リクエストをサポートします。

Pythonはデータサイエンスと自動化により適していますが、JavaScriptはフロントエンドとフルスタックの開発により適しています。 1. Pythonは、データ処理とモデリングのためにNumpyやPandasなどのライブラリを使用して、データサイエンスと機械学習でうまく機能します。 2。Pythonは、自動化とスクリプトにおいて簡潔で効率的です。 3. JavaScriptはフロントエンド開発に不可欠であり、動的なWebページと単一ページアプリケーションの構築に使用されます。 4. JavaScriptは、node.jsを通じてバックエンド開発において役割を果たし、フルスタック開発をサポートします。

CとCは、主に通訳者とJITコンパイラを実装するために使用されるJavaScriptエンジンで重要な役割を果たします。 1)cは、JavaScriptソースコードを解析し、抽象的な構文ツリーを生成するために使用されます。 2)Cは、Bytecodeの生成と実行を担当します。 3)Cは、JITコンパイラを実装し、実行時にホットスポットコードを最適化およびコンパイルし、JavaScriptの実行効率を大幅に改善します。

現実世界でのJavaScriptのアプリケーションには、フロントエンドとバックエンドの開発が含まれます。 1)DOM操作とイベント処理を含むTODOリストアプリケーションを構築して、フロントエンドアプリケーションを表示します。 2)node.jsを介してRestfulapiを構築し、バックエンドアプリケーションをデモンストレーションします。

Web開発におけるJavaScriptの主な用途には、クライアントの相互作用、フォーム検証、非同期通信が含まれます。 1)DOM操作による動的なコンテンツの更新とユーザーインタラクション。 2)ユーザーエクスペリエンスを改善するためにデータを提出する前に、クライアントの検証が実行されます。 3)サーバーとのリフレッシュレス通信は、AJAXテクノロジーを通じて達成されます。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

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

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

ホットトピック









