سلام وقت بخیر. اون پارت از پروژه که مربوط به بزرگنمایی تصاویر گالری در جزئیات محصولات(قسمت 118 دوره) هستش، من به این ارور برخوردم: Uncaught ReferenceError: showLargeImage is not defined
at HTMLAnchorElement.onclick. هرچقدرم که سرچ زدم، نشد که دیباگش کنم :(((
با سلام.
چک کنید که showLargeImage در تعریف و فراخوانی به صورت یکسان نوشته شده باشد (همان طور که می دانید کدهای جاوا اسکریپت، case sensitive هستند).
لطفاً کدهای فایل js و template مربوطه را برای بررسی بیشتر ارسال کنید.
{% if product.image %}
<img src="{{ product.image.url }}" alt="" id="main_image">
{% else %}
<img src="/static/images/product-details/1.jpg" alt="" id="main_image">
{% endif %}
.
.
.
{% for group in product_gallery_group %}
<div class="item {% if forloop.first %}active{% endif %}">
{% for item in group %}
<a onclick="showLargeImage('{{ item.image.url }}')">
<img src="{{ item.image.url }}" width="75" height="75" alt="">
</a>
{% endfor %}
</div>
{% endfor %}
function showLargeImage(imageSrc){
$('#main_image').attr('src', imageSrc);
}
این تابع showLargeImage را در چه فایلی قرار دادید؟ آیا کدهای مربوط به فراخوانی آنرا را به پروژه اضافه کردید؟ (معمولاً در footer قرار می گیرند.)
تابع توی فایل custom.js هستش که توی فولدر مربوط به فایلای js گذاشته شده. کدهای مربوط به فراخوانی فایل custom هم توی فایل مربوط به footer گذاشته شده.
توی این فایل custom، تابع های دیگه ای هم تعریف شده که اونا بدون مشکل کار میکنن. این تابع ارور میده.
در کدهای شما مشکلی ندیدم (یا لااقل من مشکلی پیدا نکردم) درون تابع با استفاده از console.log ، چند Log از پارامترها بگیرید تا بتوان اطلاعات بیشتری از چگونگی اجرای تابع و خطاهای احتمالی به دست آورد.
سلام دوست من
رفرنس فایل js رو بررسی کنین که در صفحه حتما وجود داشته باشه
اگر وجود داشت ، کش مرورگر رو پاک کنین تا مرورگر مجدد شروع به دانلود فایل js کنه
خیلی ممنونم. کش رو پاک کردم و مشکل برطرف شد :))
خواهش میکنم دوست من
موفق باشین :)