762
צפיות
צפיות
5
תשובות
תשובות
שליטה על כל אות בנפרד
אני רוצה לקבל שליטה על כל אות בנפרד, לדוגמה, שכאשר העכבר יעבור על כל אות בתוך קטע טקסט היא תשנה את הצבע, או תגדל, תהיה מודגשת וכדומה. איך אני עושה את זה?
הדרך היחידה שראיתי כעת, זה לחלק כל אות עם span ובו להגדיר את מה שאני רוצה, כמובן שא"א לעשות את זה ידני, ולכן עשיתי סקריפט שהופך קטע טקסט לסטרינג ארוך שבו כל אות תופיע בצורה כזו:
"<span onmouseover=style.color='red' onmouseout=style.color='black'>W</span>"
ואחר כך אני מפליט אותו עם document.write
א. האם קיימת דרך פשוטה יותר?
ב. משום מה בדרך זו השורות אינן נשברות. למה? ואיך אני מתקן את זה?
תודה רבה.
5 תשובות
לגבי שבירת השורה
מצאתי מה היתה הבעיה. (פשוט לא היה רווחים).
אני לא מכיר דרך פשוטה, אבל
לגבי הצמדת האירועים over/out – מציע לעשות את זה עם סקריפט שיתלבש על כל התגים לאחר הטעינה, אחרת העמוד יראה זוועתי.
למעשה גם את העטיפה של כל אות ב-span אתה יכול לעשות אחרי הטעינה, זה יגרום שגם שבירת השורות תהיה תקינה (כי הפלט הראשוני יהיה טקסט רגיל), וגם לחיסכון משמעותי בתעבורה (אם זה שיקול)
אלי ענתבי
איני בטוח שהבנתי נכון,
הרי לכאורה ברור שאם אני יוצר את הפלט בעזרת סטרינג (וכפי שתיארתי בהודעה הראשונה), אז זה נעשה לאחר הטעינה. לא?
ובאופן זה כבר לא משנה איך אני מדביק את האירועים, כי כל הפלט נוצר לאחר הטעינה.
איפה אתה יוצר את ה-SPAN?
אם אתה יוצר אותו בצד שרת – ה-html שיורד לדפדפן יכלול את כל התגי span פיזית
כנ"ל לגבי אירועים mouseover – אם בצד שרת אתה מייצר את ה-span עם מאפיין mouseover/out – יוצא שהפלט שלך יראה מיפלצתי, וכמובן – יגזול תעבורה (=זמן) בהעברת המידע מהשרת לגולש
מה שאני מציע זה שאת ייצור ה-span והאירועים תעשה בצד לקוח, זה גם יעיל וגם מהיר יותר.
אלי ענתבי
עכשיו הבנתי.
אני יוצר את ה-SPAN על ידי javascript שבתוך קובץ HTML. אז לפי מה שאני מבין, זה נוצר בצד לקוח. (ובצד שרת זה כאשר עובדים עם PHP וכדומה).
תודה רבה.