バージョン フラッシュ cs5
わかりましたので、選択したすべてのライブラリ項目の名前を変更する一般的なコードを知っています
var items = fl.getDocumentDOM().library.getSelectedItems();
for (var i=0; i<items.length; i++){
var item = items[i];
item.name = "ABC_"+item.name;
}
しかし、ライブラリ アイテムがフォルダにある場合、これでは十分ではありません... item.name はフル パスを返しますが、item.name は名前を設定するためです。oO 他の誰かがここで指摘しているように、http://forums.adobe.com/message/107718
- Level1の名前をABC_Level1に変更しようとすると
- Level1 のフォルダー パスが LIBRARY/FolderA/FolderB/Level1 の場合
- 私は代わりにこれを手に入れます
- ABC_FolderA-FolderB-Level1
おそらく、このような文字列パーサーをコーディングできます。
item.name = "ABC_"+item.name.substr(item.name.lastIndexOf("-"), 99)
しかし、それは本当に見苦しく、ライブラリ項目にすでに「-」が含まれていると機能しません。たとえば「レベル1」
だから私が望んでいるのは、パスではなく名前だけを返す名前にアクセスする別の方法だと思います