ホームページ > バックエンド開発 > PHPチュートリアル > Discuz では DIY 機能はどのように実装されていますか?

Discuz では DIY 機能はどのように実装されていますか?

WBOY
リリース: 2016-06-23 14:17:40
オリジナル
2006 人が閲覧しました

Discuz の DIY 機能がどのように実装されているかを一般的に説明できる人はいますか? 1 日探しましたが、手がかりが見つかりません。 ! !


ディスカッション (解決策) への返信

決定した位置に基づいて各コントロールをドラッグ可能にし、スタイルを保存し、使用時にそのスタイルを呼び出します

決定した位置に基づいて各コントロールをドラッグ可能にしますスタイルを保存し、使用するときにそのスタイルを呼び出すには、次の要件を満たす必要があります:
1. 静的ページは変更可能でなければなりませんね。
2. DIYしたい場所が決まっているのは非常に限られていませんか?
3. 各フレームには独自の ID があります。この ID に基づいてスタイルを呼び出すにはどうすればよいですか?
4. このドラッグ アンド ドロップは JavaScript によって実装されていますか? jQuery経由?

リンクを投稿して見てみてはいかがですか?

リンクを投稿して見てみてはいかがですか? http://www.discuz.net/
ログイン後、右上隅に「DIY」リンクがあります

実装の原則は、JavaScript と PHP を組み合わせて変更するタグを介して実装することですページのタグ () データベースで指定された div をデータベースに保存されているコンテンツに置き換え、データベースはページの ID を記録します (実際のページは存在しません)、テンプレート名、diy の ID、および CSS スタイルはすべてキャッシュによって行われ、CSS の内容はデータベースに設定されます。このようにしてDIV+CSSが出来ます

上の人が上手く言っています

ソースコードを見てください
common_diy.js

拡張文字列メソッド: property2js
を定義します。 styleCss 関数を定義し、styleCss のいくつかのメソッドを拡張します。
json オブジェクト Util を定義します。
複数のメソッドを含む匿名関数を定義します。その中で、Drag メソッドと DIY メソッドがより重要です。



portal_diy.js

Drag オブジェクトを定義します。
DIY オブジェクト var spaceDiy を定義し、メソッド spaceDiy.init(1); を実行します

ドラッグ アンド ドロップ モジュールについては、Discuz の公式ドキュメントを参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート