JavaScript/שילוב במסמך HTML: הבדלים בין גרסאות בדף

מתוך ויקיספר, אוסף הספרים והמדריכים החופשי
תוכן שנמחק תוכן שנוסף
אין תקציר עריכה
אין תקציר עריכה
שורה 3: שורה 3:
*'''ניתן לכתוב קוד JavaScript בתוך מסמך HTML''', תהליך זה בעייתי לדפדפנים ישנים. ולכן אם יש לכם דפדפן חדש (החל מ-Internet Explorer 5 או Firefox 2 או גרסאות חדשות של דפדפנים אחרים) אתם יכולים לכתוב פשוט (בזמן הלמידה):
*'''ניתן לכתוב קוד JavaScript בתוך מסמך HTML''', תהליך זה בעייתי לדפדפנים ישנים. ולכן אם יש לכם דפדפן חדש (החל מ-Internet Explorer 5 או Firefox 2 או גרסאות חדשות של דפדפנים אחרים) אתם יכולים לכתוב פשוט (בזמן הלמידה):
<pre style="direction:ltr;">
<pre style="direction:ltr;">
<script language="javascript">
<script type="text/javascript">
...קוד javascript
...קוד javascript
</script>
</script>
שורה 12: שורה 12:
לכתוב את הקוד הבא בין תגי head או body במסמך HTML.
לכתוב את הקוד הבא בין תגי head או body במסמך HTML.
<pre style="direction:ltr;">
<pre style="direction:ltr;">
<script language="javascript" src="javascript_file.js"></script>
<script type="text/javascript" src="javascript_file.js"></script>
</pre>
</pre>
חובה להשתמש באלמנט סוגר, למרות שאין לאלמנט תוכן.
חובה להשתמש באלמנט סוגר, למרות שאין לאלמנט תוכן.
שורה 28: שורה 28:
ניתן לשלב Javascript בתוך קובץ ה-HTML עצמו, אך אז אנו נתקלים במספר בעיות.
ניתן לשלב Javascript בתוך קובץ ה-HTML עצמו, אך אז אנו נתקלים במספר בעיות.
<pre style="direction:ltr;">
<pre style="direction:ltr;">
<script language="javascript">
<script type="text/javascript">
...קוד javascript
...קוד javascript
</script>
</script>
שורה 35: שורה 35:


<pre style="direction:ltr;">
<pre style="direction:ltr;">
<script language="javascript">
<script type="text/javascript">
<!--
<!--
...קוד javascript
...קוד javascript
שורה 46: שורה 46:
'''לא נכון'''
'''לא נכון'''
<pre style="direction:ltr;">
<pre style="direction:ltr;">
<script language="javascript">
<script type="text/javascript">
<!--
<!--
alert("Message")
alert("Message")
שורה 55: שורה 55:
'''נכון'''
'''נכון'''
<pre style="direction:ltr;">
<pre style="direction:ltr;">
<script language="javascript">
<script type="text/javascript">
<!--
<!--
alert(&amp;quot;Message&amp;quot;)
alert(&amp;quot;Message&amp;quot;)
שורה 68: שורה 68:
'''נכון'''
'''נכון'''
<pre style="direction:ltr;">
<pre style="direction:ltr;">
<script language="javascript">
<script type="text/javascript">
<!--
<!--
<![CDATA[
<![CDATA[

גרסה מ־16:54, 7 ביוני 2015

JavaScript

התחלת העבודה

הוראת תנאי

אובייקטים

מערכים

לולאות

פונקציות

אובייקט המסמך

אוביקטים נוספים

JavaScript למתקדמים

ספריות

בינה מלאכותית


גרסה להדפסה

על מנת לשלב Javascript בדף ה-HTML שלנו אנחנו צריכים להשתמש באלמנט script של HTML.

  • ניתן לכתוב קוד JavaScript בתוך מסמך HTML, תהליך זה בעייתי לדפדפנים ישנים. ולכן אם יש לכם דפדפן חדש (החל מ-Internet Explorer 5 או Firefox 2 או גרסאות חדשות של דפדפנים אחרים) אתם יכולים לכתוב פשוט (בזמן הלמידה):
<script type="text/javascript">
   ...קוד javascript
</script>

תעברו לפרק הבא ותנסו...

  • ניתן להפריד את קוד ה-JavaScript מקוד HTML:

לכתוב את הקוד הבא בין תגי head או body במסמך HTML.

<script type="text/javascript" src="javascript_file.js"></script>

חובה להשתמש באלמנט סוגר, למרות שאין לאלמנט תוכן. ולפתוח דף חדש בשם: משהו.js (סיומת נקודה-js לקובץ, כמו שלעמוד HTML יש סיומת נקודה-html או נקודה-htm) בדוגמא זאת תפתחו דף חדש ולשמור בשם javascript_file.js ולכתוב בו קוד של javascript ולהשמיט את ה- <"script language="javascript> ו- <script/> בגלל שאנחנו כבר לא בקובץ html דוגמא לקובץ החדש :

<!--
  alert("Message")
-->

הערה ליודעי CSS: הפרדה זו דומה להפרדת עיצוב מתוכן בעזרת אלמנט link שקורא ל-CSS, כך נוכל להשתמש באלמנט script על מנת לקרוא לקובץ Javascript, בלי שב-HTML שלנו תהיה שורת קוד Javascript אחת.

תמיכה בדפדפנים ישנים

ניתן לשלב Javascript בתוך קובץ ה-HTML עצמו, אך אז אנו נתקלים במספר בעיות.

<script type="text/javascript">
   ...קוד javascript
</script>

דפדפנים ישנים, עלולים לא להכיר את האלמנט script ולכן עלינו להסתיר את תוכן הקוד בהערות HTML

<script type="text/javascript">
<!--
   ...קוד javascript
-->
</script>

כאן לא תמו צרותינו. זוכרים שב-HTML אסור להשתמש במרכאות (") רגילות או כפולות, אלא להשתמש ביישויות בלבד? זה נכון גם כאן.

לא נכון

<script type="text/javascript">
<!--
  alert("Message")
-->
</script>

נכון

<script type="text/javascript">
<!--
  alert(&quot;Message&quot;)
-->
</script>

די מסורבל לא? זה בגלל שהתוכן של אלמנט script מוגדר כ-PCDATA (Parsed Content Data). ה-Parsed רוצה לומר שהוא מפרש את התוכן שבתוך ה-script קודם כל כ-HTML ורק אחר-כך כ-Javascript.

על מנת להימנע מזה, ניתן לומר לדפדפן שלא יפרש את התוכן כ-PCDATA אלא כ-CDATA. ב-CDATA מרכאות וסימני גדול קטן >< אינם מפוענחים כ-HTML.

נכון

<script type="text/javascript">
<!--
<![CDATA[
  alert("Message")
>]]
-->
</script>

כעת ניתן לכתוב רגיל. די מסובך לא? עדיף לשים את הקוד בקובץ אחר ולהיפטר מכל הסיבוך הזה...