سلام دوستان
یک صفحه ی html دارم که داخلش چند فریم هست ، میخوام داخل یکی از این فریم ها هر دفعه به صورت رندوم ی جای این فریم کلیک شه
چطور میتونم چنین کاری رو انجام بدم؟ ممنون
کاربر شهرسختافزار
سلام دوستان
یک صفحه ی html دارم که داخلش چند فریم هست ، میخوام داخل یکی از این فریم ها هر دفعه به صورت رندوم ی جای این فریم کلیک شه
چطور میتونم چنین کاری رو انجام بدم؟ ممنون
|
|
سلام
سوال شما واضح نیست که دقیقا چه کاری می خوای انجام بدی و کاربرد چی هست. اگه کامل توضیح بدی و کد رو قرار بدی شاید بتونم کمکت کنم
ABC.ABC (12-12-17)
کاربر شهرسختافزار
ممنون از توجهتونبرای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید ارسالی توسط Arshan935 برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
فایل پیوست رو دانلود کنید و فایل index.html رو باز کنید
میبینید که چند فریم وجود داره به طور مثال داخل یکی از فریم ها نوشتم 1 و داخل یک فریم دیگه نوشتم 2
حالا می خوام وقتی این صفحه باز میشه داخل فریم 2 یک کلیک انجام بشه (مختصاتش هم رندوم)
برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید ارسالی توسط ABC.ABC برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
همون طوری که گفتم دوست داشتم که کمکت کنم با اینکه چیزی از برنامه نویسی وب نمی دونم. از همون موقع خدا شاهده دارم می گردم و این چیزها رو پیدا کردم امیدوارم که به دردت بخوره و بتونی ازش یک راه حلی پیدا کنی
طبق جستجوهایی که انجام دادم شما باید از جاوا اسکریپت برای این کار استفاده کنی
دو راه داری یا اینکه در قسمت head یک تابع درست کنی و بعد در قسمت body اونو فراخوانی کنی یا اینکه مستقیم در قسمت body اسکریپت رو بنویسی
برای ایجاد تابع به این صورت باید عمل کنی
myClick اسم تابع شماست که بعدا باید در قسمت body اون رو به صورت زیر فراخوانی کنیکد:<script> function myClick(){ } </script>
کد:<script> myClick(); </script>
برای ایجاد متغیر هم باید از کلمه کلیدی var استفاده کنیم مثلا
کد:<script> function myClick(){ var x = 10; } </script>
برای ایجاد کلیک در نقاط مختلف ما به دو مختصات نیاز داریم x و y .
x یعنی مقدار فاصله از سمت چپ و y یعنی مقدار فاصله از بالا
چون ما می خواهیم که این اعداد همیشه یکی نباشن باید کاری کنیم که اعداد تصادفی ایجاد بشه
برای ایجاد اعداد تصادفی باید از تابع زیر استفاده کنیم. این تابع همیشه اعدادی بین 0 و یک را تولید می کند.
اینجا دو مشکل وجود داره یکی اینکه مختصات بین 0 و 1 نیست و دوم اینکه مختصات باید رند باشه برای اینکار از این راه حل استفاده می کنیمکد:Math.random();
کد:var x = Math.random() * 100;کد:با این روش عدد ما بزرگتر از 0 و 1 می شه ولی مشکلی که داره این هست که رند نیست برای رند کردن باید از روش زیر استفاده کنیمکد:var x = Math.random() + 1;
کد:var x = Math.floor(Math.random());
پس تا اینجا تابع ما به صورت زیر می شه که مختصات دو نقطه رو بدست آوردیم به صورت تصادفی
HTML Code:<script> function myClick(){ var x = Math.floor(Math.random() * 10); var y = Math.floor(Math.random() * 10 ); } </script>
------------------------------------------
برای ایجاد کلیک به صورت خودکار این رو پیدا کردم.
مثلا شما باید اول یک id به body بدی که بتونی به اون دسترسی پیدا کنی و بعد اسکریپت زیر رو قرار بدی که کلیک به صورت اتوماتیک انجام بشه
کد:<body id="myid"> <script> document.getElementById(myid).click(); <script> </body>
این کد رو هم پیدا کردم که می شه در نقطه دلخواه یک کلیک ایجاد بشه
کد:<body> <script> document.elementFromPoint(x,y).click(); <script> </body>
ولی اینکه چطوری باید اون دو نقطه x و y رو به این داد رو نتونستم پیدا کنم و نرم افزاری هم ندارم که بتونم اینا رو چک کنم چون من تازه برنامه نویسی سی شارپ رو شروع کردم و visual studio 2012 express desktop دارم که توش کد html قبول نمی کنه و باید نسخه کاملش رو داشته باشم
-------------------------
موقع جستجو این کدها رو هم پیدا کردم که شاید به درد شما بخوره گرچه ربطی به سوال شما نداره
کد1:
کد:<script> alert("Hello"); <script>
کد2:
کد:<script> document.write("Hi"); </script>
کد زیر هم باید رنگ بک گراند رو عوض کنه (مثلا به ذهنم رسید اگه می شد موقعی که یک کلیک اتفاق می افته رنگ بک گراند تغییر پیدا کنه خیلی جالب می شد)
کد:<body id="myid"> <script> document.getElementById("myid").style.backgroundColor = "#FF0000" </script> </body>
آخرین ویرایش توسط Speed Racer در تاریخ 12-12-17 انجام شده است
ABC.ABC (12-12-17), DOOM999 (13-12-17), M A H R A D (13-12-17), ravegoat (13-12-17)
کاربر شهرسختافزار
خیلی خیلی ممنون واقعا زحمت کشیدید.....برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید ارسالی توسط Arshan935 برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
این ایده که با هر کلیک رنگ عوض شه عالیه اما متاسفانه کار نکرد و فقط رنگ قرمز رو نشون میده ، برای تست می خواستم بزنم ببینم درست عمل می کنه یا نه
Speed Racer (12-12-17)
چون زمان کم بود نتونستم پیدا کنم چون شما عجله داری نمی شه کاری کردبرای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید ارسالی توسط ABC.ABC برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
شما با چه نرم افزاری تست کردی که درست دراومد تا منم دانلود کنم و تلاش کنم ببینم می تونم یه همچین کدی رو پیدا کنم چون یک ایده به ذهنم رسید
به نظرم اگه می شد هر کلیک با یک ip جعلی همراه باشه جالب می شد
|
|
کاربر شهرسختافزار
سلام دوستان
میخوام زمانی که روی صفحه کلیک میشه رنگ پس زمینه تغییر کنه.... کسی از دوستان کدش رو داره؟
حلقه رو در جاوا اسکریپت یاد گرفتم دوستمون هم که کد کلیک کردن رو گذاشتند ، حالا میخوام ببینم چیزی که نوشتم داره درست عمل میکنه یا خیر
ممنون
Speed Racer (17-12-17)
مدیر انجمن برنامه نویسی و رباتیک
سلام،برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید ارسالی توسط ABC.ABC برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
بفرمایید این کدشه :
HTML Code:<html> <head> <script src="https://code.jquery.com/jquery-1.10.2.js"></script> </head> <body> <script> $(document).click(function(e) { document.body.style.backgroundColor = "blue"; }); </script> </body> </html>
بنده رویداد کلیک رو به body متصل کردم. حالا اگر شما تمایل دارید می تونید رویداد رو به المان دیگری متصل کنید. در ضمن برای تستش به اینترنت متصل باشد چون مرجع jquery رو به شکل محلی ندادم.
موفق باشید
آرمین برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
'چو ایران نباشد، تن من مباد
Dim Armin As Iranian
If Iran.Enabled = False Then Armin.Enabled = False
ABC.ABC (17-12-17), Speed Racer (17-12-17)
کاربر شهرسختافزار
سلامبرای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید ارسالی توسط ravegoat برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
خیلی ممنون درسته و کار می کنه ، همچنین کدی که دوستمون دادن برای کلیک کردن اتوماتیک
اما اینجا ی مشکلی هست ، کدی که دادید رو داخل فایلی به نام temp3.html گذاشتم که یک فریم هست در صفحه ی اصلی ، در این حالت اتوماتیک روی این فریم کلیک انجام نمیشه : (اگه خودم کلیک کنم درسته اما خودش تغییر رنگ نمیده)
میدونید مشکل از چی هست؟کد:<html> <head> <script> function myClick() { document.elementFromPoint(10,20).click(); } </script> <title>سایت موقتا بسته می باشد</title> </head> <p id="timeLable"></p> <script> //فراخوانی متد clock در فواص زمانی 1 ثانیه var myVar=setInterval(function(){clock()},1000); function clock() { myClick(); } </script> <frameset cols="50%,50%"> <frame src="temp3.html"> <frame> </frameset> </html>
فایها رو پیوست هم کردم
بازم ممنون
Speed Racer (17-12-17)
مدیر انجمن برنامه نویسی و رباتیک
خواهش می کنم،
دوست گرامی اون کد مربوط به کلیک کردن، روی فریم کلیک می کنه نه محتویات فریم. فایل temp3 جز محتویات فریم شما محسوب میشه. با کد زیر مشکل حل میشه:شاد و موفق باشیدHTML Code:<html> <head> <script> function myClick() { var x = document.getElementById("frm"); var y = (x.contentWindow || x.contentDocument); if (y.document)y = y.document; y.elementFromPoint(10, 20).click(); } </script> <title>سایت موقتا بسته می باشد</title> </head> <p id="timeLable"></p> <script> //فراخوانی متد clock در فواص زمانی 1 ثانیه var myVar=setInterval(function(){clock()},1000); function clock() { myClick(); } </script> <frameset cols="50%,50%"> <frame id="frm" src="temp3.html"> <frame> </frameset> </html>
آرمین برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
'چو ایران نباشد، تن من مباد
Dim Armin As Iranian
If Iran.Enabled = False Then Armin.Enabled = False
ABC.ABC (17-12-17), Speed Racer (17-12-17)
1 کاربر در حال مشاهده این موضوع. (0 عضو و 1 میهمان)
Bookmarks