1

下手な英語でごめんなさい。><

javascript を使用して html ファイルから swf オブジェクトを取得できないという問題が発生しました。

Html での私の swf オブジェクト コードは次のとおりです。

<object type="application/x-shockwave-flash" id="direction" name="direction" align="middle" data="../static/swf/direction.swf" width="650" height="650">
    <param name="quality" value="high">
    <param name="bgcolor" value="#ffffff">
    <param name="allowscriptaccess" value="sameDomain">
    <param name="allowfullscreen" value="true">
</object>

以下のjavascript(swfobject.js)でこのオブジェクトを取得すると、失敗しました:

var flash = swfobject.getObjectById("direction");
console.log(flash);

結果はヌルです。しかし、swfobject.getObjectById メソッドに足を踏み入れると、次のようになります。

function getObjectById(objectIdStr) {
    var r = null;
    var o = getElementById(objectIdStr);
    if (o && o.nodeName == "OBJECT") {
        if (typeof o.SetVariable != UNDEF) {
            r = o;
        }
        else {
            var n = o.getElementsByTagName(OBJECT)[0];
            if (n) {
                r = n;
            }
        }
    }
    return r;
}

「o = getElementById(objectIdStr);」という文の後、o はまさに前述の Object ですが、「typeof o.SetVariable != UNDEF」の結果は true であるため、r は null で返されます。また、DOM がオーバーロードされていることを確認できます。

だから、どこで何か間違ったことをしたのかわからないのですか?私を助けてください!どうも!

4

0 に答える 0