من خلال المصفوفات ، يمكن أن يؤدي توسيع الربط بين السلسلة بسهولة إلى مشاكل في الأداء
نسخة الكود كما يلي:
وظيفة StringBuffer () {
هذا .__ strings__ = new array () ؛
}
stringbuffer.prototype.append = function (str) {
هذا .__ سلاسل __. دفع (str) ؛
إرجاع هذا ؛
}
stringbuffer.prototype.toString = function () {
إرجاع هذا. __ Strings __. انضم ("") ؛
}
var buffer = new StringBuffer () ؛
Buffer.Append ("Hello"). إلحاق ("JavaScript") ؛
var result = buffer.toString () ؛
تنبيه (نتيجة) ؛ // Hello JavaScript
مصدر الرمز: https://gist.github.com/hehongwei44/fe71f10e4d2d9295aeab
وظيفة المساعد لموضع شريط عرض الصفحة
نسخة الكود كما يلي:
/*وظيفتان لتحديد ارتفاع الصفحة الحالي وعرضه*/
وظيفة pageheight () {
return document.body.scrollheight ؛
}
وظيفة pagewidth () {
return document.body.scrollwidth ؛
}
/*تحديد المواضع الأفقية والرأسية لشريط التمرير*/
وظيفة scrollx () {
var de = document.documentElement ؛
إرجاع self.pagexoffset || (de && de.scrollleft) || document.body.scrollleft ؛
}
وظيفة scrolly () {
var de = document.documentElement ؛
إرجاع self.pageyoffset || (de && de.scrolltop) || document.body.scrolltop ؛
}
/*وظيفتان لتحديد ارتفاع وعرض عرض المتصفح*/
وظيفة WindowHeight () {
var de = document.documentElement ؛
العودة self.innerheight || (de && de.clientheight) || document.body.clientheight ؛
}
وظيفة windowwidth () {
var de = document.documentElement ؛
العودة self.innerwidth || (de && de.clientwidth) || document.body.clientwidth ؛
}
مصدر الرمز: https://gist.github.com/hehongwei44/62907b9b7061d4dfadb
الوظائف التي تعدل شفافية العناصر
نسخة الكود كما يلي:
/* دالة لضبط شفافية العنصر*/
وظيفة setOpacity (elem ، المستوى) {
// أي شفافية معالجة
if (elem.filters) {
elem.style.filters = 'alpha (opatity =' + level + ')' ؛
} آخر {
elem.style.Opacity = المستوى / 100 ؛
}
}
مصدر الرمز: https://gist.github.com/hehongwei44/87839cd3b8439aff6a3c
احصل على عدة وظائف شائعة لوضع الماوس
نسخة الكود كما يلي:
/*يتم استخدام وظيفتان شائعتان للحصول على الموضع الحالي للماوس بالنسبة للصفحة بأكملها*/
وظيفة getx (e) {
e = e || window.event ؛
إرجاع e.pagex || e.clientx + document.body.scrollleft ؛
}
وظيفة gety (e) {
e = e || window.event ؛
إرجاع E.pagey || e.clienty + document.body.scrolltop ؛
}
/*وظيفتان يحصلان على موضع الماوس بالنسبة للعنصر الحالي*/
وظيفة getElementX (e) {
العودة (E && E.Layerx) || window.event.offsetx ؛
}
وظيفة getElementy (e) {
العودة (E && E.layery) || window.event.offsety ؛
}
مصدر الرمز: https://gist.github.com/hehongwei44/2732365bd42baa491ef8
مجموعة من الوظائف التي تستخدم سمة CSSDISPlay لتبديل رؤية العناصر
نسخة الكود كما يلي:
/**
* الوظائف التي تستخدم العرض لإخفاء العناصر
* */
دالة إخفاء (elem) {
var curdisplay = getStyle (Elem ، 'Display') ؛
if (curdisplay! = 'none') {
elem. $ olddisplay = curdisplay ؛
}
elem.style.display = 'none' ؛
}
/**
* استخدم العرض لعرض وظيفة العنصر
* */
وظيفة عرض (elem) {
elem.style.display = elem. $ olddisplay || '' ؛
}
مصدر الرمز: https://gist.github.com/hehongwei44/b4192af8227d756bfda6
وظائف عامة متعلقة بالأسلوب
نسخة الكود كما يلي:
/**
* احصل على سمة النمط (الاسم) للعنصر المحدد (ELEM)
* */
وظيفة getStyle (elem ، الاسم) {
// إذا كان موجودًا في النمط [] ، فقد تم تعيينه (وهو حاليًا)
if (elem.style [name]) {
إرجاع elem.style [name] ؛
}
// خلاف ذلك ، اختبار طريقة IE
آخر إذا (elem.currentStyle) {
إرجاع elem.currentStyle [name] ؛
}
// أو طريقة W3C
آخر if (document.defaultView && document.defaultView.getComputedStyle) {
name = name.replace (/(az)/g ، "-$ 1") ؛
name = name.toLowerCase () ؛
var s = document.defaultView.getComputedStyle (elem ، "") ؛
إرجاع S && S.GetPropertyValue (الاسم) ؛
}
// خلاف ذلك ، يستخدم المستخدم متصفحًا آخر
آخر {
العودة لاغية.
}
}
مصدر الرمز: https://gist.github.com/hehongwei44/9abf63536Accd0f2Eeb7
احصل على الارتفاع الحالي وعرض العنصر
نسخة الكود كما يلي:
/**
* احصل على الارتفاع الحقيقي للعنصر
* انظر الوظيفة المذكورة أعلاه للحصول على تبعية getStyle.
* */
وظيفة getheight (elem) {
إرجاع parseint (getStyle (elem ، 'height')) ؛
}
/**
* احصل على العرض الحقيقي للعنصر
* انظر الوظيفة المذكورة أعلاه للحصول على تبعية getStyle
* */
وظيفة getWidth (elem) {
إرجاع parseint (getStyle (elem ، 'width')) ؛
}
مصدر الرمز: https://gist.github.com/hehongwei44/b524ff25991d99625eb2
ما ورد أعلاه هي البرامج النصية JavaScript شائعة الاستخدام المشتركة في هذه المقالة. أتمنى أن يعجبكهم.