1

私は本当にこれらすべてのコツをつかもうとしていますが、ブログを構築するには、基本的に PHP/JS/Jquery/MySQL/AS/etc を学ぶ必要があることに驚きました。等

コーディング コミュニティは解決策を提供することに非常に寛大ですが、私が一貫して欠けているのは、コードを配置する場所と理由の基本的な説明です。本当に理解できる方法で学びたいと思っています。

したがって、私の現在の問題はその良い例です。基本的に、jQuery からフラッシュ SWF で特定のフレームをトリガーする方法を見つけようとしています。使用しているライトボックス プラグインが閉じたときに、特定の場所でトリガーしたい SWF があります。

ここでSOの投稿に出くわしました:

javascriptを介してフラッシュボタンオブジェクトをトリガーする

他にもいくつかありますが、これが一番分かりやすかったです。しかし、いつものようにコードを見ていると、それがどこにあるのか、どのように関係しているのか、どのように機能しているのかがよくわかりません。

私が使用している現在のjQueryプラグインでは、ライトボックスウィンドウを閉じることに関連していると思われる機能(トリガーしたいもの)は、コアファイルとスキンファイルの2つのファイルにあり、次のようになります:

CORE

onClose : noop,
----------------------------------
Line 142: S.close = function () {
----------------------------------
Line 157:   S.options.onClose(S.getCurrent());
Line 158:   S.skin.onClose();
-----------------------------------
Line 497:       a = S.close;

SKIN

var overlayOn = false, visibilityCache = [], pngIds = ["sb-nav-close", "sb-nav-next", "sb-nav-play", "sb-nav-pause", "sb-nav-previous"], container, overlay, wrapper,     doWindowResize = true;
-----------------------------------
toggleNav("close", n);
-----------------------------------
<a id="sb-nav-close" title="{close}" onclick="Shadowbox.close()"></a>
<a id="sb-nav-close" title="{close}" onclick="Shadowbox.close()"></a>
<a id="sb-nav-close" title="{close}" onclick="Shadowbox.close()"></a>
-----------------------------------
addEvent(overlay, "click", S.close)
-----------------------------------
K.onClose = function () {
-----------------------------------
removeEvent(overlay, "click", S.close);

今私が参照したSOの投稿...

私にとっては、SWF ファイルのアクション スクリプト内に関数を作成し、ExternalInterface を使用して呼び出されるその関数の機能を追加し (「addCallback」がどのように関連するのかわかりませんが)、最後の部分を追加するようです。このコードには本当に頭を悩ませています。swf ファイルの ID を取得して、その中で関数を実行しているのでしょうか。

これらすべてを考慮しても、上記で参照した jQuery ファイルのどこにそのようなコードを配置すればよいかさえわかりません。ユーザーがライトボックスを閉じたときに jQuery プラグインが actionscript の特定の関数をトリガーするようにしたい場合、コードをスキン ファイルの S.close、S.skin.onClose に配置するのは適切でしょうか? コアファイルで?閉じるたびにこの機能を実行するページの先頭で呼び出す別の.jsファイルでは?

私の頭がクラクラします。

このページをありがとう、それは素晴らしいリソースです。

-

4

0 に答える 0