下記サイトに書かれているように
http://blog.codefidelity.com/?p=16
<script type="text/javascript"> function LightboxDelegate(url,caption) { var objLink = document.createElement('a'); objLink.setAttribute('href',url); objLink.setAttribute('rel','lightbox'); objLink.setAttribute('title',caption); Lightbox.prototype.start(objLink); } </script>
という関数をJS側で用意し、
FLASHからExternalInterfaceでアクセスすれば
Lightboxを開かせることができる。
しかしLightboxの start(obj); のように、動作をスタートする関数やAPIが用意されていればいいが、されていなかった場合はどうすればいいか。
下記のようにjQueryのtrigger関数を使って、リンクをクリックしたことにすればLightboxを作動させることができる。
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script> <script type="text/javascript"> function callLightbox(url) { var objLink = document.getElementById("test"); objLink.href = url; $('#test').trigger('click'); } </script> <a id="test" href="http://google.co.jp">test</a>