Através de matrizes, a expansão do splicing de cordas pode facilmente levar a problemas de desempenho
A cópia do código é a seguinte:
function stringbuffer () {
este .__ strings__ = novo array ();
}
Stringbuffer.prototype.append = function (str) {
isso .__ Strings __. Push (str);
devolver isso;
}
Stringbuffer.prototype.toString = function () {
Retornar esta .__ Strings __. Junte -se ("");
}
var buffer = new StringBuffer ();
buffer.append ("hello"). Append ("javascript");
var resultado = buffer.toString ();
alerta (resultado); // Olá JavaScript
Fonte de código: https://gist.github.com/hehongwei44/fe71f10e4d2d9295AeAb
Função auxiliar da posição da barra de rolagem de viewport da página
A cópia do código é a seguinte:
/*Duas funções para determinar a altura e largura da página atual*/
função pageHeight () {
retorno document.body.scrolHeight;
}
Função PageWidth () {
retornar document.body.scrollwidth;
}
/*Determine as posições horizontal e vertical da barra de rolagem*/
função scrollx () {
var de = document.documentElement;
retornar self.pagexoffset || (de && de.scrollleft) || document.body.scrollleft;
}
função scrolly () {
var de = document.documentElement;
retornar self.pageyoffset || (de && de.scrolltop) || document.body.scrolltop;
}
/*Duas funções para determinar a altura e a largura da viewport do navegador*/
função windowHeight () {
var de = document.documentElement;
retornar self.innerHeight || (de && de.clientHeight) || document.body.clientHeight;
}
função windowwidth () {
var de = document.documentElement;
retornar self.innerwidth || (de && de.clientWidth) || document.body.clientWidth;
}
Fonte de código: https://gist.github.com/hehongwei44/62907b9b7061d4dfadb
Funções que ajustam a transparência do elemento
A cópia do código é a seguinte:
/* Função para ajustar a transparência do elemento*/
função setopacity (elem, nível) {
// ou seja, processamento de transparência
if (elem.filters) {
elem.style.filters = 'alpha (opacity =' + nível + ')';
} outro {
elem.style.Opacity = nível / 100;
}
}
Fonte de código: https://gist.github.com/hehongwei44/87839cd3b8439aff6a3c
Obtenha várias funções comuns para a posição do mouse
A cópia do código é a seguinte:
/*Duas funções comuns são usadas para obter a posição atual do mouse em relação à página inteira*/
função getx (e) {
e = e || Window.Event;
Retornar E.Pagex || e.clientx + document.body.scrollleft;
}
função gety (e) {
e = e || Window.Event;
Retornar E.Pagey || e.clienty + document.body.scrolltop;
}
/*Duas funções que obtêm a posição do mouse em relação ao elemento atual*/
função getElementx (e) {
Return (e && e.layerx) || window.Event.OffSetX;
}
função getElementy (e) {
Return (e && e.layery) || window.Event.OffSety;
}
Fonte de código: https://gist.github.com/hehongwei44/2732365bd42baa491ef8
Um conjunto de funções que usam o atributo cssdisplay para mudar de visibilidade do elemento
A cópia do código é a seguinte:
/**
* Funções que usam a tela para ocultar elementos
* */
função hide (elem) {
var CurDisplay = getStyle (elem, 'display');
if (curdisplay! = 'nenhum') {
Elem. $ OldDisplay = CurDisplay;
}
elem.style.display = 'nenhum';
}
/**
* Use a tela para exibir a função do elemento
* */
função show (elem) {
elem.style.display = elem. $ OldDisplay || '';
}
Fonte de código: https://gist.github.com/hehongwei44/b4192af8227d756bfda6
Funções gerais relacionadas ao estilo
A cópia do código é a seguinte:
/**
* Obtenha o atributo de estilo (nome) do elemento especificado (elem)
* */
função getStyle (elem, nome) {
// Se existe em estilo [], foi definido (e atualmente)
if (elem.style [nome]) {
retornar elem.style [nome];
}
// caso contrário, teste o método
else if (elem.currentstyle) {
retornar elem.currentstyle [nome];
}
// ou método W3C
else if (document.defaultView && document.defaultView.getComputedStyle) {
name = name.Replace (/(AZ)/G, "-$ 1");
name = name.tolowerCase ();
var s = document.defaultView.getComputedStyle (elem, "");
return s && s.getPropertyValue (nome);
}
// caso contrário, o usuário está usando outro navegador
outro {
retornar nulo;
}
}
Fonte de código: https://gist.github.com/hehongwei44/9abf63536Accd0f2EEB7
Obtenha a altura e a largura atuais do elemento
A cópia do código é a seguinte:
/**
* Obtenha a altura verdadeira do elemento
* Veja a função acima para o GetStyle de dependência.
* */
função getheight (elem) {
Return parseint (getStyle (elem, 'altura'));
}
/**
* Obtenha a verdadeira largura do elemento
* Veja a função acima para a dependência getStyle
* */
função getwidth (elem) {
Return parseint (getStyle (elem, 'largura'));
}
Fonte do código: https://gist.github.com/hehongwei44/b524ff25991d99625eb2
Os acima são os scripts JavaScript comumente usados compartilhados neste artigo. Eu espero que você goste deles.