Clashbaz 3 ارسال شده در اردیبهشت 99 گزارش بازنشر ارسال شده در اردیبهشت 99 سلام. من یه قالب فروشگاهی ساختم که صفحه بندی ها و فیلتر ها با آجاکس کار می کنن. حالا وقتی آجاکس استفاده میشه و صفحه جدید لود میشه، دیگه اسکریپت ها ی من کار نمیکنه. مثلا یکی از اسکریپت ها magnifier شبیه سایت themeforest هست که وقتی ماوس میره روی محصول، یه تصویر tooltip باز میشه. مشکل چطور برطرف کنم؟ کد magnifier هم به این صورت هست: jQuery(document).ready(function($) { function objectWithPrototype(e, t) { function i() {} var n, r; i.prototype = e, n = new i, n.prototype = e; if (typeof t != "undefined") for (r in t) t.hasOwnProperty(r) && (n[r] = t[r]); return n } var Magnifier = { positionMagnifierNextTo: function(e) { var t, n, r; t = this.magnifierDiv(), n = jQuery(e).offset().top + jQuery(e).outerHeight() - t.outerHeight(), n < jQuery(window).scrollTop() && (n = jQuery(window).scrollTop()), jQuery(e).offset().left + jQuery(e).outerWidth() / 2 >= jQuery(window).width() / 2 ? r = jQuery(e).offset().left - t.outerWidth() : r = jQuery(e).offset().left + jQuery(e).outerWidth(), t.css({ top: n, left: r }) }, showMagnifier: function(e) { jQuery(e).attr("data-tooltip1") === undefined && (jQuery(e).attr("data-tooltip1", jQuery(e).attr("title")), jQuery(e).attr("title", ""), jQuery("img", e).attr("title", "")), this.populateMagnifierFrom(e), this.positionMagnifierNextTo(e), this.magnifierDiv().css({ display: "inline" }) }, hideMagnifier: function() { this.magnifierDiv().hide() }, magnify: function(e) { var t = this; jQuery(e).on("mouseenter", function() { t.showMagnifier(this) }), jQuery(e).on("mouseleave", function() { t.hideMagnifier(this) }) }, bindMetaData: function(e) { var t = jQuery(e), n = this.magnifierDiv(), r, i, s = n.find("strong").empty(), o = n.find(".author").empty(), u = n.find(".category").empty(), a = n.find(".cost").empty(), f = n.find(".info"); i = t.attr("data-price"), r = typeof jQuery(e).attr("data-price") != "undefined", s.html(t.attr("data-title")), o.html(t.attr("data-author")), u.html(t.attr("data-category")), a.html(r ? i : i) } } , ImageMagnifier = objectWithPrototype(Magnifier, { populateMagnifierFrom: function(e) { var t, n = this.magnifierDiv(), r = n.find("div.size-limiter"), i = jQuery(e); i.attr("data-image") ? (t = new Image, jQuery(t).attr("src", i.attr("data-image")), i.attr("data-preview-height") && (jQuery(t).attr("height", 350), jQuery(t).attr("width", 350 / i.attr("data-preview-height") * i.attr("data-preview-width"))), r.empty(), r.append(t), r.show()) : r.hide(), this.bindMetaData(e) } }) , LandscapeImageMagnifier = objectWithPrototype(ImageMagnifier, { magnifierDiv: function() { return jQuery("div#landscape-image-magnifier") } }); jQuery(function() { LandscapeImageMagnifier.magnify("a.rtltheme_product") }); }); نقل قول لینک به ارسال
Morteza 34190 ارسال شده در اردیبهشت 99 گزارش بازنشر ارسال شده در اردیبهشت 99 سلام با این بخش کد مشکل حل نمیشه باید خطایی که داده میشه رو اول حل کنین مثلا از کنسول مرورگر چک کنین خطایی که میده چیه نقل قول لینک به ارسال
Clashbaz 3 ارسال شده در خرداد 99 مالک گزارش بازنشر ارسال شده در خرداد 99 در در 4/29/2020 at 15:33، Morteza گفته است : سلام با این بخش کد مشکل حل نمیشه باید خطایی که داده میشه رو اول حل کنین مثلا از کنسول مرورگر چک کنین خطایی که میده چیه کلا نه این کد. وقتی آجاکس اجرا میشه و نتیجه میده، دیگه کد های دیگر فایل های اسکریپ کار نمیکنه.هیچ خطایی هم نداره. یعنی باید یه جورایی بعد از اجرای آجاکس، مجددا فایل های اسکریپ هم رندر یا از نو بارگزاری بشه. نقل قول لینک به ارسال
Morteza 34190 ارسال شده در تیر 99 گزارش بازنشر ارسال شده در تیر 99 باید این کدها رو بصورت تابع ایجاد کنین و در کال بک ایجاکس اونها رو فراخوانی کنین. نقل قول لینک به ارسال
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .