مرحباً، كنت أتساءل ما هي الخيارات المتاحة لتحديث جافاسكريبت المخزن مؤقتًا في جلسات متصفح المستخدمين عند تغيير عناوين URL للصور و/أو روابط <a> في هذا البرنامج النصي، والذي تتم إضافته كـ HTML مخصص في قسم الرأس لمكون سمة جديد:
مع رمز الأداة الحالية هذا، يتطلب تحديث المتصفح للمستخدمين لرؤية الصور المحدثة حديثًا أو الروابط المتغيرة. افترضت أن هذا سيتم تحديثه عبر نوع من طرق AJAX في ذاكرة التخزين المؤقت للمتصفح، تمامًا مثل انعكاس تغييرات CSS فورًا دون إعادة تحميل الصفحة، ولكن هذا ليس هو الحال مع نصوص الرأس المخصصة.
لاحظت أن إضافة الإعلانات للإعلانات الداخلية تدير بطريقة ما فرض تحديث فور تغيير HTML للإعلان. بالنسبة لإضافة الإعلانات الداخلية، وجدت ما يلي في house-ads.js عند البحث عن الكلمة المفتاحية refresh:
@observes("refreshOnChange")
refreshAd() {
if (this.get("listLoading")) {
return;
}
this.set("adHtml", this.chooseAdHtml());
},
didInsertElement() {
this._super(...arguments);
if (!this.get("showAd")) {
return;
}
if (this.get("listLoading")) {
return;
}
if (adIndex.topic_list_top === null) {
// start at a random spot in the ad inventory
Object.keys(adIndex).forEach((placement) => {
const adNames = this.adsNamesForSlot(placement);
adIndex[placement] = Math.floor(Math.random() * adNames.length);
});
}
this.refreshAd();
},
هل يمكن تطبيق طريقة مماثلة بطريقة ما على جافاسكريبت الإضافة المخصص الخاص بي؟