PDA

View Full Version : فراخوانی متن در div



alasht
جمعه 14 خرداد 1389, 15:33 عصر
سلام
اقا من یه قالب وبلاگ درست کردم میخوام بزارم برای دانلود متاسفانه قبلا هر چی گذاشتم کپی رایتشو برداشتن
حالا میخوام کپی رایتو به صورت مخفی بزارم
یعنی ایا میشه با جاوا کاری کرد که مثلا من یه کد جاوا بنویسم بعد تو یه فایل به اسم script.js ذخیره کنم بعد با استفاده از id تو یک div فراخونی کنم ؟
مثلا اینطوری



<script language="javascript" type="text/javascript">
یک متن همرا با لینک اینجا باشد
</script>

<div id="copyright">متن موجود در این قسمت چاپ شود</div>




من از جاوا هیچی بلد نیستم میشه لطف کنید این رو برام بنویسید و کدشو اینجا بزاردی
با تشکر فراوان :قلب:

alasht
جمعه 14 خرداد 1389, 18:38 عصر
:متفکر:
کسی نبود جواب ما رو بده ؟
سوال به این کوچیکی پرسیدم
فقط چند خط کده
تو رو خدا :گریه:

ALIREZA121
جمعه 14 خرداد 1389, 19:41 عصر
برای اینکه یکدرون یک div رو با یک متن از طریق javascript پر کنی باید از خاصیت innerHTML اون استفاده کنی به صورت زیر

document.getElementById('div_id').innerHTML= 'text'

alasht
جمعه 14 خرداد 1389, 20:26 عصر
سلام
خیلی ممنون که پاسخ دادید
والا من جاوا بلد نیستم
میشه کدشو کامل اینجا بزارید من فقط کپیش کنم ؟
ممنون میشم:قلب:

alireza_s_84
جمعه 14 خرداد 1389, 20:49 عصر
والا من جاوا بلد نیستم
میشه کدشو کامل اینجا بزارید من فقط کپیش کنم ؟

عزیز دل برادر اینجا محلی برای یادگیری هست نه اینکه شما کدی رو بگیری ببری Paste کنی. اینجا همه دور هم دیگه جمع شدن تا چیز یاد بگیرن نه اینکه کپی برداری کنن.:متفکر:

ALIREZA121
جمعه 14 خرداد 1389, 21:47 عصر
دوست عزیز! با همین تیکه کد میتونی کارو انجام بدی به جای text متن مورد نظر خودت رو بزار!و به جایdiv_id همون id مربوط به div v رو

alasht
جمعه 14 خرداد 1389, 21:50 عصر
سلام
ببخشید ولی شما خیلی خلاصه توضیح دادید
حداقل یه نمونه بزارید
من تیکه کد رو اینطوری نوشتم ولی صفحه سفید فقط اومد




<html>
<head>
<script language="javascript" type="text/javascript">
document.getElementById('javad').innerHTML= 'text';
</script>
</head>
<body>
<div id="javad"></div>
</body>
</html>div_id چیه ؟
text چیه ؟
چطوری متن داخل تگ div نمایش داده میشه ؟
حداقل یه مثال کامل بزنید :ناراحت:

pashaie
جمعه 14 خرداد 1389, 22:39 عصر
من تیکه کد رو اینطوری نوشتم ولی صفحه سفید فقط اومد
این مشکل به این خاط پیش میاد که کد شما قبل اینکه دیو ایجاد بشه اجرا می شه و در نتیجه هنوز دیوی با آیدی جواد وجود نداره!

یا کد جاوا اسکرپیت رو آخر سر بزار


<html>
<head>
</head>
<body>
<div id="javad"></div>
<script language="javascript" type="text/javascript">
document.getElementById('javad').innerHTML= 'text';
</script>
</body>
</html>

یا از onload استفاده کن - که این روش مطمئن تره



<html>
<head>
<script language="javascript" type="text/javascript">
function myFunc(){
document.getElementById('javad').innerHTML= 'text';
}
</script>
</head>
<body onload="myFunc()">
<div id="javad"></div>
</body>
</html>

alasht
جمعه 14 خرداد 1389, 22:55 عصر
اقا یک دنیا تشکر
این همونیه که میخواستم
انشالله همیشه موفق باشی
:قلب::قلب::قلب:

youness1369
شنبه 12 شهریور 1390, 16:42 عصر
این مشکل به این خاط پیش میاد که کد شما قبل اینکه دیو ایجاد بشه اجرا می شه و در نتیجه هنوز دیوی با آیدی جواد وجود نداره!

یا کد جاوا اسکرپیت رو آخر سر بزار


<html>
<head>
</head>
<body>
<div id=&quot;javad&quot;></div>
<script language=&quot;javascript&quot; type=&quot;text/javascript&quot;>
document.getElementById('javad').innerHTML= 'text';
</script>
</body>
</html>

یا از onload استفاده کن - که این روش مطمئن تره



<html>
<head>
<script language=&quot;javascript&quot; type=&quot;text/javascript&quot;>
function myFunc(){
document.getElementById('javad').innerHTML= 'text';
}
</script>
</head>
<body onload=&quot;myFunc()&quot;>
<div id=&quot;javad&quot;></div>
</body>
</html>

سلام آقا این پست شما خیلی بدرد من خورد اما یه چیزی میخوام بدونم من نمیخوام Text اجرا بشه توی کد بالا و بجاش یه اسکریپ خارجی رو میخوام جایگزین کنم مثلا:

<script language='JavaScript' type='text/javascript' src='Adrese file .js'></script>
و با همون div فراخوانیش کنم ممنون میشم اگه کمکم کنید

farcry
یک شنبه 13 شهریور 1390, 01:59 صبح
برای حفاظت از کد هاتون راههای زیادی وجود داره ... به چند نمونش توجه کنید.

اینکد کردن صفحه با متد base64 که البته اصلا راه خوبی نیست به راحتی میشه کد رو فریز کرد .
اینکریپت کردن صفحه در خارج و فراخوانی در صفحه (مثلا یه فایل *.x رو فراخوانی کنیم و بعد از رمز گشایی از اطلاعاتش استفاده کنیم)
اینکد کردن صفحه با کیورد مخصوص (این راه نسبت به base64 امنیت بیشتری داره ولی باید سورس کودتون رو برای دیکد کردن خوب خر تو خر بنویسید...!)
خرد کردن ادرس به ادرس های کوچکتر : مثال


<html>
<body>
<script language="javascript" id="s1">
</script>
<script language="javascript" type="text/javascript">
a1=new String("C:/Users/ali/Desktop");
a2='/3.js';
a3=a1+a2;
document.getElementById("s1").src=a3
</script>
</body>

که البته ادرس ها رو به هم می چسبونه و بعد اسکریپ داخلش رو اجرا میکنه...

و البته باز هم می تونید با خلاقیت خودتون اسکریپ های طرف کلاینت رو مخفی نگه دارید ....
ولی باور کنید کسی که حرفه ای باشه در کمتر از چند دقیقه سایت رو زیر و رو میکنه....


شاید برای بعضی از شما اینکد کردن کار مشکلی باشه ولی به این حرف من توجه کنید:

"برید به سورس کدتون نگاه کنید اگه دیدید خیلی براش زحمت کشیدید و روش خیلی کار کردید والبته کپی پیست نکردید انوقت فکر پنهان کردن کد و این حرف ها بیفتید...!!!"

youness1369
یک شنبه 13 شهریور 1390, 10:01 صبح
داداش جواب سوال منم میدی؟!
یکم عقب تر سوالم هست

farcry
یک شنبه 13 شهریور 1390, 11:40 صبح
داداش جواب سوال منم میدی؟!
یکم عقب تر سوالم هست

.................................................. .................................................. ..............

بله میشه داخل یه اسکریپ یه اسکریپ دیگه نوشت.
به مثال زیر نگاه کن...

من یه فایل 1.htm و دو تا اسکریپ ساختم.

74814

داخل صفحه htm اینا رو نوشتم...


<html>
<body>
<script language="javascript" type="text/javascript" src="1.js"></script>
<script language="javascript" type="text/javascript">
a1();
function time()
{
document.write("<script src='2.js'><\/script>")
a2();
}
setTimeout("time()",1000)

</script>
</body>
</html>


خوب حالا تفسیرش:

اول اسکریپ 1 رو اینکلود میکنیم بعد فراخوانی میکنیم.....
بعد یه فانکشن درست می کنیم به اسمtime و در داخل اون دیگه اسکریپ دوم رو اینکلود می کنیم بعد صداش می زنیم
اجرا شه

اگه قبل از اینکلود کردن صداش کنیم ارور میده....

از script defer هم یه جور دیگه میشه استفاده کرد ولی همین بدرت میخوره.

youness1369
یک شنبه 13 شهریور 1390, 11:59 صبح
مرسی
اما ببین
این کد منه:

<html>

<head>

<script language="javascript" type="text/javascript">

function myFunc(){

document.getElementById('javad').document.write("<script src='adrese file .js'><\/script>");

}

</script>

</head>

<body onLoad="myFunc()">

<div id="javad"></div>

</body>

</html>
من میخوام وقتی function بالا رو فراخوانی میکنم اسکریپت خارخی توش هم اجرا بشه. نمیخوام خود بخود اجرا بشه.
اگه کد بالا اشتباهه لطفا تصحیحش کنید. ممنون

farcry
یک شنبه 13 شهریور 1390, 13:52 عصر
کد شما که سر تا پا اشکاله....!

ببین کلا برای فراخوانی چند حالت داره یا باید به body بگی لود کنه.... یا باید با تایمر ها کارکنی (مثلا بگی بعد از 3و4 ثانیه لود کن یا اجرا کن و....)
یا باید بعد از یک event لود بشه مثلا بعد از کلیک کردن یک دکمه..... یا .........

به اسکریپ پایین نگاه کن اول اینکلود کردن ..... بعد صدا زدن.....

در مرور گر IE اگه هر دو همزمان باشه اشکالی پیش نمی یاد.... ولی تو فایر فاکس اینکلود میکنه اما نمیرسه اجرا کنه....!!!!!




<html>
<head>
<script language="javascript" type="text/javascript">
function myFunc(){
document.write("<script src='adresefile.js'><\/script>")
document.write("hi <div id=javad> </\div>");
setTimeout("ali()",100)
}
</script>
</head>
<body onLoad="myFunc()">
</body>
</html>




یه فایل js درست کن بنویس



function ali()
{
document.getElementById('javad').innerHTML=" writed by javad ..."
}


حالا تو میتونی بگی که اگه فلان دکمه کلیک شد اینو بنویسه و خود به خود نیاد....

ببین پس شد
........................

اول اینکلود اون جاوا اسکریپی که بیرون نوشتی....
دوم بگو چجوری باید اجرا شه....

..........................

youness1369
یک شنبه 13 شهریور 1390, 14:17 عصر
دوست عزیزم ممنون
اما من باز به جوابم نرسیدم
بذار مشکل اصلی رو بگم
من این کد رو برای پرشین بلاگ میخوام. اگه بدونی، پرشین بلاگ گذاشتن کد جاوا رو توی قالب غیرممکن کرده و فقط یه محل اختصاصی برای اون قرار داده که همه کدهای جاوا رو اونجا بنویسیم بعد توی قالب خودش یه تگ گذاشته که همه کدها اونجا اجرا میشن.
من میخوام وقتی کدی رو توی قسمت اختصاصی میذارم با function باشه (یا هر چیزی که کارمو راه بندازه) بعد توی قالب بیام هرجا که میخوام فراخوانی کنم بگم اینجا اجرا شو.
بازم ممنون.

youness1369
دوشنبه 04 مهر 1390, 18:45 عصر
کسی نبود جواب ما رو بده؟!