Fork me on GitHub

役立ちぬ開発史、それはただのブログ

覚えておくといい、ブログの時代は終わる。いつかその内、きっとたぶん…

MOONPhase ver.2.8.0で、シールの実行が失敗するときの解決方法

| Comments

一昨日、MOONPhase ver.2.8.0が公開されました。なので早速、昨日enchantMOONのMOONPhaseをver.2.8.0にバージョンアップしました。そしたら、今まで使えてたシールが、"Cannot call method `split` of undefined"となり、起動できなくなりました。

MOONPhase-ver.2.8.0-accident

解決方法

どうやら、バージョンアップして、window.location.getAbsoluteURL("")の仕様が変わったため、シールのディレクトリを参照するときにエラーが起きているようです。

解決するには、

1
2
3
4
5
6
7
8
9
function getPageID() {
    var relURL = window.location.getAbsoluteURL("").split("/Data/")[1];
    return relURL.split( "/" )[1];
}

function getStickerID() {
    var relURL = window.location.getAbsoluteURL("").split("/Data/")[1];
    return relURL.split( "/" )[2];
}

split("")の中のDatadataに変更しましょう。

1
2
3
4
5
6
7
8
9
function getPageID() {
    var relURL = window.location.getAbsoluteURL("").split("/data/")[1];
    return relURL.split( "/" )[1];
}

function getStickerID() {
    var relURL = window.location.getAbsoluteURL("").split("/data/")[1];
    return relURL.split( "/" )[2];
}

そうすると、実行できるはずです。

おわりに

いやぁ〜、バージョンアップしたら、シールが動かなくて、焦った焦った(^_^;)
素早くMOONPhase version up で、MyStickerID() の修正が必要に・・・という記事で、解決策をブログに書いて下さった「くるのはるみさん」には、感謝感謝です。

Comments