الفرق بين المراجعتين لصفحة: «JavaScript/Document/lastModified»

من موسوعة حسوب
إضافة الصّفحة
 
ط تنسيق
سطر 14: سطر 14:
// Tuesday, July 10, 2001 10:19:42
// Tuesday, July 10, 2001 10:19:42
</syntaxhighlight>
</syntaxhighlight>
تحويل قيمة lastModified إلى كائن من النّوع Date:
تحويل قيمة <code>lastModified</code> إلى كائن من النّوع <code>[[JavaScript/Date|Date]]</code>:
<syntaxhighlight lang="javascript">
<syntaxhighlight lang="javascript">
var oLastModif = new Date(document.lastModified);
var oLastModif = new Date(document.lastModified);
</syntaxhighlight>
</syntaxhighlight>
تحويل قيمة lastModified إلى عدد الأجزاء من ألف جزء من الثّانيّة منذ 1 يناير 1970 على السّاعة 00:00:00:
تحويل قيمة <code>lastModified</code> إلى عدد الأجزاء من ألف جزء من الثّانيّة التّي مرّت منذ 1 يناير 1970 على السّاعة 00:00:00:
<syntaxhighlight lang="javascript">
<syntaxhighlight lang="javascript">
var nLastModif = Date.parse(document.lastModified);
var nLastModif = Date.parse(document.lastModified);
سطر 24: سطر 24:


==ملاحظات==
==ملاحظات==
لاحظ بأنّه لا يُمكن استعمال السّلسة النّصيّة التي تُعيدها الخاصيّة lastModified من أجل المُقارنة بين تواريخِ تعديل المُستندات بسهولة. إليك مثالا لكيفيّة عرض نافذة تنبيه عندما تُعدَّل الصّفحة (انظر أيضًا: ملفّات الارتباط في JavaScript):
لاحظ بأنّه لا يُمكن استعمال السّلسة النّصيّة التي تُعيدها الخاصيّة <code>lastModified</code> من أجل المُقارنة بين تواريخِ تعديل المُستندات بسهولة.
 
إليك مثالا لكيفيّة عرض نافذة تنبيهٍ عندما تُعدَّل الصّفحة (انظر أيضًا: [[JavaScript/Document/cookie|ملفّات الارتباط في JavaScript]]):
<syntaxhighlight lang="javascript">
<syntaxhighlight lang="javascript">
if (Date.parse(document.lastModified) > parseFloat(document.cookie.replace(/(?:(?:^|.*;)\s*last_modif\s*\=\s*([^;]*).*$)|^.*$/, "$1") || "0")) {
if (Date.parse(document.lastModified) > parseFloat(document.cookie.replace(/(?:(?:^|.*;)\s*last_modif\s*\=\s*([^;]*).*$)|^.*$/, "$1") || "0")) {
سطر 47: سطر 49:


مُلاحظة: المُتصفّحات التي تعمل بمُحرِّك  WebKit (مثل Chrome وSafari) تُعيد التوقيت بصيغة UTC، أمّا Firefox وInternet Explorer فتُعيد السّلسة بصيغة التوقيت المحليّ.
مُلاحظة: المُتصفّحات التي تعمل بمُحرِّك  WebKit (مثل Chrome وSafari) تُعيد التوقيت بصيغة UTC، أمّا Firefox وInternet Explorer فتُعيد السّلسة بصيغة التوقيت المحليّ.
إن أردت أن تعرف ما إذا كانت صفحة خارجيّة قد تغيّرت أو لا، فانظر [[JavaScript/XMLHttpRequest]].


إن أردت أن تعرف ما إذا كانت '''صفحة خارجيّة''' قد تغيّرت أو لا، فانظر [[JavaScript/XMLHttpRequest]].
==مصادر ومواصفات==
==مصادر ومواصفات==
* مواصفة HTML5.
* مواصفة HTML5.

مراجعة 15:53، 21 مارس 2018

تُعيد سلسلةً نصيةً تحتوي على تاريخ ووقتِ آخر تعديلٍ للمُستند الحاليّ.

البنية العامة

string = document.lastModified;

مثال

طريقة الاستعمال البسيطة:

alert(document.lastModified); 
// يُعيد تاريخا مُشابها لما يلي
// Tuesday, July 10, 2001 10:19:42

تحويل قيمة lastModified إلى كائن من النّوع Date:

var oLastModif = new Date(document.lastModified);

تحويل قيمة lastModified إلى عدد الأجزاء من ألف جزء من الثّانيّة التّي مرّت منذ 1 يناير 1970 على السّاعة 00:00:00:

var nLastModif = Date.parse(document.lastModified);

ملاحظات

لاحظ بأنّه لا يُمكن استعمال السّلسة النّصيّة التي تُعيدها الخاصيّة lastModified من أجل المُقارنة بين تواريخِ تعديل المُستندات بسهولة.

إليك مثالا لكيفيّة عرض نافذة تنبيهٍ عندما تُعدَّل الصّفحة (انظر أيضًا: ملفّات الارتباط في JavaScript):

if (Date.parse(document.lastModified) > parseFloat(document.cookie.replace(/(?:(?:^|.*;)\s*last_modif\s*\=\s*([^;]*).*$)|^.*$/, "$1") || "0")) {
    document.cookie = "last_modif=" + Date.now() + "; expires=Fri, 31 Dec 9999 23:59:59 GMT; path=" + location.pathname;
    alert("لقد عُدّلت هذه الصّفحة");
}

نفسُ المثال مع تجاهل أوّل زيارة:

var

    nLastVisit = parseFloat(document.cookie.replace(/(?:(?:^|.*;)\s*last_modif\s*\=\s*([^;]*).*$)|^.*$/, "$1")),
    nLastModif = Date.parse(document.lastModified);

if (isNaN(nLastVisit) || nLastModif > nLastVisit) {
    document.cookie = "last_modif=" + Date.now() + "; expires=Fri, 31 Dec 9999 23:59:59 GMT; path=" + location.pathname;
    if (isFinite(nLastVisit)) {
        alert("لقد عُدّلت هذه الصّفحة");
    }
}

مُلاحظة: المُتصفّحات التي تعمل بمُحرِّك WebKit (مثل Chrome وSafari) تُعيد التوقيت بصيغة UTC، أمّا Firefox وInternet Explorer فتُعيد السّلسة بصيغة التوقيت المحليّ.

إن أردت أن تعرف ما إذا كانت صفحة خارجيّة قد تغيّرت أو لا، فانظر JavaScript/XMLHttpRequest.

مصادر ومواصفات

  • مواصفة HTML5.