נושאים פעיליםנושאים פעילים  הצגת רשימה של חברי הפורוםרשימת משתמשים  חיפוש בפורוםחיפוש  עזרהעזרה
  הרשמההרשמה  התחברותהתחברות RSS עדכונים
בניית אתרים
RSS UnderWarrior Forums : RSS בניית אתרים
נושא

נושא: html- שחזור Style אחרי שינוי

שליחת תגובהשליחת נושא חדש
כותב
הודעה << נושא קודם | נושא הבא >>
חיימקה
משתמש חבר
משתמש חבר
סמל אישי

הצטרף / הצטרפה: 18 April 2010
מדינה: Israel
משתמש: מנותק/ת
הודעות: 243
נשלח בתאריך: 30 October 2011 בשעה 21:33 | IP רשוּם
ציטוט חיימקה

בס"ד

אני מחפש רעיון יעיל לשחזור ה style המקורי של אלמנט אחרי שעבר שינוי ב JS.

לדוגמה:

קוד:

<div style='color:Red;' onmouseover='ChangeColor(this);' onmousedown='RestoreColor(this);'>Div 1</div>

<div style='color:Green;' onmouseover='ChangeColor(this);' onmousedown='RestoreColor(this);'>Div 2</div>

<script type='text/javascript'>

function ChangeColor(elem)

{

    elem.style.color = "Brown";

}

function RestoreColor(elem)

{

    elem.style.color = ???

}

אפשרות שעולה בראשי היא לשמור את ה style של כל האלמנטים במערך (דו מימדי. מימד אחד- ה id של האלמנט. מימד שני- ה style שלו.)

אפשרויות נוספות? 

נ.ב:

ב IE בלבד, ניתן להוסיף מאפיינים כרצונך לכל אלמנט, ולהשתמש בהם.

לדוגמה:

קוד:

<div style='color:Red;' myNewProperty='color:Red' onmouseover='ChangeColor(this);' onmousedown='RestoreColor(this);'>Div 1</div>

ואח"כ נוכל לכתוב בפונקציה RestoreColor את המשפט הבא:

קוד:

elem.style = elem.myNewProperty;

רעיונות נוספים?



__________________
אין יאוש בעולם כלל!
חזרה לתחילת העמוד הצג את כרטיס החבר של חיימקה חפש הודעות אחרות של חיימקה
 
shoshan
מנהל האתר
מנהל האתר
סמל אישי

הצטרף / הצטרפה: 16 July 2005
מדינה: Israel
משתמש: מנותק/ת
הודעות: 4637
נשלח בתאריך: 30 October 2011 בשעה 23:07 | IP רשוּם
ציטוט shoshan

קודם כל בכל דפדפן ולא רק ב-IE אתה יכול להוסיף תכונות כרצונך.

מעבר לכך תקרא על classים ב- בCSS, מאוד פשוט להוריד או להסיר CLASS וזה בפועל מה שאתה רוצה כאן


__________________
עד מתי רשעים יעלוזו?

עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
חזרה לתחילת העמוד הצג את כרטיס החבר של shoshan חפש הודעות אחרות של shoshan בקר בדף הבית של shoshan
 
חיימקה
משתמש חבר
משתמש חבר
סמל אישי

הצטרף / הצטרפה: 18 April 2010
מדינה: Israel
משתמש: מנותק/ת
הודעות: 243
נשלח בתאריך: 01 November 2011 בשעה 01:13 | IP רשוּם
ציטוט חיימקה

בס"ד

אחד אחד...

1.

shoshan כתב:

קודם כל בכל דפדפן ולא רק ב-IE אתה יכול להוסיף תכונות כרצונך.

שים לב! לא כתבתי על הוספת תכונות למאפיין style, אלא על הוספת מאפיינים לאלמנט!
הקוד הבא לא יעבוד בדפדפן אחר:
קוד:

<span ccc='blue' onclick='ColorMe(this);'>Click me!</span>
<script type='text/javascript'>
function ColorMe(elem)
{
    elem.style.color=elem.ccc;
}
</script>

2.

shoshan כתב:

מעבר לכך תקרא על classים ב- בCSS, מאוד פשוט להוריד או להסיר CLASS וזה בפועל מה שאתה רוצה כאן

אותה שאלה על class'ים!
להוריד / לתת class - זה קל! אבל לשחזר אחר שינוי?
ראה:

קוד:

<html>
<head>
    <title>Untitled Page</title>
 <style type='text/css'>
 .class1 { color:red; }
 .class2 { color:green; }
 .classChange { color:gray; }
 </style>
</head>
<body>
    <div class='class1' onmouseover='Change(this);' onmouseout='Restore(this);' >Over me!</div>
    <div class='class2' onmouseover='Change(this);' onmouseout='Restore(this);' >Over me!</div>
</body>
<script>
function Change(elem)
{
 elem.className = 'classChange';
}
function Restore(elem)
{
 elem.className = ???;
}
</script>
</html>



__________________
אין יאוש בעולם כלל!
חזרה לתחילת העמוד הצג את כרטיס החבר של חיימקה חפש הודעות אחרות של חיימקה
 
shoshan
מנהל האתר
מנהל האתר
סמל אישי

הצטרף / הצטרפה: 16 July 2005
מדינה: Israel
משתמש: מנותק/ת
הודעות: 4637
נשלח בתאריך: 01 November 2011 בשעה 08:33 | IP רשוּם
ציטוט shoshan

1. בכל דפדפן שהוא לא IE אתה יכול להשתמש ב-
elem.getAttribute('ccc')

1.2. אם היית משתמש ב-JS אם elem.ccc = '...' אז זה היה
עובד גם בשאר הדפדפנים.

2. change יכול לעשות כזה דבר:

elem.className = 'over';

ו-restore יכול לעשות:

elem.className = ''

כלומר להוסיף ולבטל CLASS

לחלופין ואופציה אף יותר מוצלחת היא להוסיף CLASS ואז להסיר
אותו (אבל לשמור על שאר הקלאסים אם היו כאלו לאובייקט) שזו
גם אופציה עם מניפולציה בסיסית למחרוזת className

__________________
עד מתי רשעים יעלוזו?

עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
חזרה לתחילת העמוד הצג את כרטיס החבר של shoshan חפש הודעות אחרות של shoshan בקר בדף הבית של shoshan
 
חיימקה
משתמש חבר
משתמש חבר
סמל אישי

הצטרף / הצטרפה: 18 April 2010
מדינה: Israel
משתמש: מנותק/ת
הודעות: 243
נשלח בתאריך: 01 November 2011 בשעה 08:43 | IP רשוּם
ציטוט חיימקה

בס"ד

חזק!



__________________
אין יאוש בעולם כלל!
חזרה לתחילת העמוד הצג את כרטיס החבר של חיימקה חפש הודעות אחרות של חיימקה
 

אם ברצונך להגיב לנושא זה עליך קודם להתחבר
אם אינך רשום/ה כבר עליך להרשם

  שליחת תגובהשליחת נושא חדש
גרסת הדפסה גרסת הדפסה

קפיצה לפורום
אינך יכול/ה לשלוח נושאים חדשים בפורום זה
אינך יכול/ה להגיב לנושאים בפורום זה
אינך יכול/ה למחוק את הודעותיך ותגוביך בפורום זה
אינך יכול/ה לערוך את הודעותיך ותגובותיך בפורום זה
אינך יכול/ה לצור סקרים בפורום זה
אינך יכול/ה להצביע בסקרים בפורום זה