raravaice
چهارشنبه 04 اردیبهشت 1387, 11:57 صبح
سلام
کاری که قرار هست انجام بشه :
دامین a.com انتشار دهنده یه سری اطلاعات
دامین b.com نمایش دهنده اطلاعاتی که a.com منتشر کرده.
b.com با استفاده از سورس جاوا اسکریپت a.com که تو صفحه قرار میده میخواد دیتا رو نشون بده کاری که سورس a.com میکنه این هست که میاد یه ifram تولید میکنه و دیتایی رو نمایش میده حالا برای انجام یه سری درخواستها و افزودن سورس در صورت نیاز در حین کار "نه در ابتدای درخواست" لازم هست که یه سورس جدید جاوا اسکریپت به صفحه مذکور تزریق بشه من برای این کار از دستورات مر بوط استفاده کردم یعنی :
var d="alert('1234');"
function Tes (){
element = window.top.document.createElement('script');
element.setAttribute('id', 'SCWSFWD');
element.setAttribute('type', 'text/javascript');
element.text=d;
window.top.document.body.appendChild(element);
window.top.document.body.insertBefore(element, window.top.document.body.firstChild);
}
window.onload=function() {Tes();};
و بعد از اینکه این سورس کار مورد نظر خودش رو کرد کلا المان script تولید شده رو حذف میکنم.
حالا مسئله اینه که مرورگر ها ظاهرا با این کار مخالف هستن و فقط در صورتی اجازه انجام میدن که درخواستها در یک حوزه دامنه باشن مثلا از a.com به a.com و اجازه نوشتن از iframe در a.com رو به b.com نمیدن.در اصل با نوشتن top و parent مشکل دارن.
راه حل چیه؟
چطور میشه این مسئله رو دور زد و به یه نحوه دیگه این سورس رو به صفحه مذکور تزریق کرد.
بازم میگم کلا اجازه دسترسی رو به level top یا parent نمیدن حتی document.top.write هم کار نمیکنه. و همینطور این سورس قراره که بعد از انجام درخواست سورس اولیه و وجود یه شرایط خاص به صفحه top تزریق بشه.
با تشکر
کاری که قرار هست انجام بشه :
دامین a.com انتشار دهنده یه سری اطلاعات
دامین b.com نمایش دهنده اطلاعاتی که a.com منتشر کرده.
b.com با استفاده از سورس جاوا اسکریپت a.com که تو صفحه قرار میده میخواد دیتا رو نشون بده کاری که سورس a.com میکنه این هست که میاد یه ifram تولید میکنه و دیتایی رو نمایش میده حالا برای انجام یه سری درخواستها و افزودن سورس در صورت نیاز در حین کار "نه در ابتدای درخواست" لازم هست که یه سورس جدید جاوا اسکریپت به صفحه مذکور تزریق بشه من برای این کار از دستورات مر بوط استفاده کردم یعنی :
var d="alert('1234');"
function Tes (){
element = window.top.document.createElement('script');
element.setAttribute('id', 'SCWSFWD');
element.setAttribute('type', 'text/javascript');
element.text=d;
window.top.document.body.appendChild(element);
window.top.document.body.insertBefore(element, window.top.document.body.firstChild);
}
window.onload=function() {Tes();};
و بعد از اینکه این سورس کار مورد نظر خودش رو کرد کلا المان script تولید شده رو حذف میکنم.
حالا مسئله اینه که مرورگر ها ظاهرا با این کار مخالف هستن و فقط در صورتی اجازه انجام میدن که درخواستها در یک حوزه دامنه باشن مثلا از a.com به a.com و اجازه نوشتن از iframe در a.com رو به b.com نمیدن.در اصل با نوشتن top و parent مشکل دارن.
راه حل چیه؟
چطور میشه این مسئله رو دور زد و به یه نحوه دیگه این سورس رو به صفحه مذکور تزریق کرد.
بازم میگم کلا اجازه دسترسی رو به level top یا parent نمیدن حتی document.top.write هم کار نمیکنه. و همینطور این سورس قراره که بعد از انجام درخواست سورس اولیه و وجود یه شرایط خاص به صفحه top تزریق بشه.
با تشکر