הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   JavaScript | כל האפשרויות עם הסמן [העכבר] (https://hosts.co.il/forums/showthread.php?t=82873)

ShonLevi 30-05-10 18:43

JavaScript | כל האפשרויות עם הסמן [העכבר]
 
שלום לכולם,
רציתי לשאול שאלה.
יש לי תמונה. עשיתי שכשאני לא עליה [onmouseout] התמונה נראית רגיל.
כשאני עליה [onmouseover] התמונה גדלה קצת.
וכשאני לוחץ עליה [onclick] היא משנה צבע.

עכשיו זה כעיקרון עובד. רק מה, כשאני לוחץ על התמונה. היא כביכול משנה צבע אבל ישר אחרי בגלל שאני עם הסמן עליה היא גדלה קצת, ואם אני מזיז את הסמן מהתמונה אז היא חוזרת להיות רגילה.
איך אני עושה, שכשאני לוחץ על התמונה. היא תשנה צבע. וזה יבטל את הonmouseout וonmouseover.

אם בכלל יש כזה דבר.



תודה מראש. :)

~The_Sultan~ 30-05-10 18:52

הדרך היחידה שאני יכול לחשוב עליה זה להוסיף את האירוע של ה-ONMOUSEOUT ל-ONCLICK, ולעשות לאירועים ב-ONMOUSEOVER ו-ONMOUSEOUT פונקציה של setTimeout לאיזה חצי שניה (500).

ShonLevi 30-05-10 18:59

לא הבנתי. מה זאת אומרת להוסיף את האירוע של onmouseout לonclick?

ואם נעשה פונקציה של חצי שניה לonmouseout אז אחרי חצי שניה זה יחזור לרגיל שלו חח..

~The_Sultan~ 30-05-10 19:04

אולי פונקציה שלמה פה יכולה לעזור:

PHP קוד:

<script type="text/javascript">
   var 
clicked false;

   function 
onmouseover_event(id)
   {
      if (!(
clicked))
      {
           
document.getElementById(id).style.height "100px";
           
document.getElementById(id).style.width "100px";
       }
    }

   function 
onmouseout_event(id)
   {
      if (!(
clicked))
      {
           
document.getElementById(id).style.height "90px";
           
document.getElementById(id).style.width "90px";
       }
    }
</script>

<img id="image_1" src="images/temp.gif" style="width: 90px; height: 90px;" onmouseover="onmouseover_event(this.id);" onmouseout="onmouseout_event(this.id);" onclick="this.style.backgroundColor='red'; clicked=true;"/> 

תסתכלי על זה ותנסי להבין את כיוון המחשבה שלי...

ShonLevi 30-05-10 19:26

אוקי, לקח לי זמן קצת להבין למה אצלי זה לא עבד. עכשיו עובד סבבה.
הבעיה אחי, היא שיש לי כמה תמונות. יענו הרבה.. חח
וכשאני עושה קליק על תמונה אחת. הוא עושה הרי clicked=true. ואז בעצם מה שקורה זה שאצל כל האחרים. הOnmouseover וonmouseout לא פועל.

...? :\

~The_Sultan~ 30-05-10 19:28

תהפוך את clicked ממשתנה רגיל למערך, ותעשה בו תא לכל אחת מהתמונות שלך. תשנה את הבדיקה בפונקציות בהתאם, שתעבוד עם בדיקה של המערך - לדוגמה:
if (!(clicked[id]))

ShonLevi 30-05-10 19:39

פשש תותח אחי :)
תודה רבה רבה עזרת מאוד. :)

~The_Sultan~ 30-05-10 21:20

בכיף :)


כל הזמנים הם GMT +2. הזמן כעת הוא 04:07.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ