現在使用しているスクリプトがあります。問題は、すべての html img タグの直後にスクリプトを追加する必要があることです。したがって、サイト全体のいくつかの異なる場所に同じスクリプトがあります。このスクリプトを単純な関数呼び出しでラップすることが可能かどうか疑問に思っています。スクリプト全体ではなく、サイト全体に関数を追加するだけです。
編集:私は言及すべきでした。これはTumblrテーマのライトボックスです。photo_{PostID} は有効です。photo_{PostID} は一意の写真識別子を取得するため、ライトボックスには正しい画像が表示されます。スクリプトは現在、100% 完璧に機能しており、疑いの余地はありません。すべての img タグの後にスクリプトを貼り付けるのではなく、使用する単純な 1 ライナー呼び出し関数にすべてを変換しようとしています。スクリプトは以下です、ありがとう。
<script class="inline_embed" type="text/javascript">
var domain = document.domain,
photo_{PostID} = [{
"width": "{PhotoWidth-HighRes}",
"height": "{PhotoHeight-HighRes}",
"low_res": "{PhotoURL-250}",
"high_res": "{PhotoURL-HighRes}"
}];
function event_is_alt_key(e) {
return ((!e && window.event && (window.event.metaKey || window.event.altKey)) || (e && (e.metaKey || e.altKey)));
};
document.getElementById('photo_{PostID}').onclick = function (e) {
if (event_is_alt_key(e)) return true;
window.parent.Tumblr.Lightbox.init(photo_{PostID});
return false;
}
</script>