• 1 رای - 5 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
لود نشدن برخی از اسکریپت های جاوا اسکریپت
#1
سلام
امروزدیدم انجمن خیلی سوتو کور هست یه سوال آوردم در حد المپیکTongueTongue

من چند صفحه دارم میسازم که همه شکل هم هستن فقط قسمت کانتنت اونها فرق داره در واقع به صورت ساده اینطوری هست
کد پی‌اچ‌پی:
<div>
            <
a>header</a>
            <
a>menu</a>
                <
p>content</p>
            <
a>footer</a>
            <
a>copyright</a>
        </
div
برای اینکه همه کدها باهم استفاده نشن و تکراری نباشن اومدم یک صفحه ساختم به صورت ثابت به این شکل که در کانتنت اومدم بررسی کردم اون مقداری که میاد چی هست با توجه به اون صفحه مورد نظرو اینکلود میکنم به صورت زیر

کد پی‌اچ‌پی:
<div id="aval">
<
div>
            <
a>header</a>
            <
a>menu</a>
                <
p><?php 

                        
if(!isset($_POST['id']))
                        {
                            include
'piece/variable/doshboard_home_codes.php'
                        }
                        if(isset(
$_POST['id']))
                        {
                            
$page $_POST['id'];
                            include 
'piece/variable/'.$_POST['id'].'.php'
                        }
                        
                    
                    
?></p>
            <a>footer</a>
            <a>copyright</a>
        </div>  
</div> 
این مقدار ای دی هم از داخل منو ها میخونم مثلا برای منوی خانه مقدار ای دیشو doshboard_home_codes
بگو خب Big Grin
حالا با اجاکس چک میکنم که اگه روی این منو کلیک شد مقدار ای دیشو بخونو بفرست به صفحه ایندکس که صفحه اصلی هست و اونجا هم با توجه به ای دی صفحرو اینکلود میکنه
کد اجاکس (هنوز به مشکل نرسیدیماا صبر کنید حالا)
کد پی‌اچ‌پی:
<script>
                
$( 
".nav-item" ).click(function() {
    var 
id = $(this).attr('id');
    var 
name = $(this).attr('title');

    $.
ajax({        
    
type:'post',
    
url:'index.php',
    
data:'id='+id+'&name='+name,
    
success:function(data)
    {
       
       $(
'#aval').html(data);

    }    
    });

});
</
script
مشکل اینجاست که با این کار بعضی موقه ها یکی از اسکریپتهای جی کوئری لود نمیشه اصلا ولی توی صفحه اصلی کار میکنه
مثلا فایل جاوا اسکریپت ckeditor توی صفحه اصلی کار میکنه ولی وقتی توی صفحه دیگه استفاده میکنیم و با این روش صفحرو فراخونی میکنیم لود نمیشه
چرا؟؟
در صورتی که همه محتویات صفحه مورد نظر رو نشون میده
وقتی هم روی منو کلیک میکنم با ارور زیر توی inspect element مواجه میشم
Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help, check https://xhr.spec.whatwg.org/.

آخیش تموم شدBig GrinBig Grin
  پاسخ
تشکر شده توسط :
#2
SadSadSadSadSadSad
  پاسخ
تشکر شده توسط :
#3
سلام،
تو این روشی که داری استفاده می‌کنی، صفحه ریفرش نمیشه دیگه؟
غایب
  پاسخ
تشکر شده توسط :
#4
نه دیگه صفحات با اجاکس لود میشدن بدون رفرش این روش مشکلی توی ساختار اصلی برنامه ایجاد نمویکنه صفحات درست لود میشن ولی یه مشکل کوچیک داره نمیدونم چرا بعضی اسکریپتهای جاوا اسکریپت لود نمیشدن مثلا ckeditor و یا آپلودر فقط ولی وقتی با روش get ارسال میکنم اینها همه لود میشن و کار هم میکنن ، اولش فکر میکردم تداخل جی کوئری هست ولی با گت درست عمل کرد نظرم 90 درجه عوض شد
فک کنم مشکل از اون اروری هست که نوشتم
اون مشکلم که زیاد ازش چیزی سر در نیاوردم
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان