Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Cómo escribir Zepto con desplazamiento suave? Jquery no es válido.

¿Cómo escribir Zepto con desplazamiento suave? Jquery no es válido.

1.Los objetos Zepto no pueden personalizar eventos.

Por ejemplo: $({}). bind('cust ', function(){ });

Resultado: TypeError: El objeto no tiene método 'Agregar detector de eventos'

La solución es crear un documento independiente del nodo del flujo se utiliza como objeto de evento:

Por ejemplo: $(""). bind('cust ', function(){ });

2.Expresión del selector Zepto: El valor en [nombre=valor] debe estar entre comillas dobles "o comillas simples".

Por ejemplo, ejecute: $('[data-userid = 123123123]')

Resultado: Error: Error de sintaxis: domexception 12.

Solución: $('[data-userid = " 123123123]") o $("[data-userid = ' 123123 ']"

2-1.zepto El selector no se puede seleccionar $("div[name!='abc']".

2-2.zepto no se puede utilizar el método similar a jq $('option[selected]') para obtener el elemento seleccionado opción, porque el atributo seleccionado no es un atributo estándar de CSS

Debes usar $('option ') no (function() {return!this.selected})

Por ejemplo: jq: $this .find('opción[seleccionado]'). attr ('datos-v') * 1.

zepto: $this.find('opción'). {return! this.selected}).property('data-v') * 1

Sin embargo, puedes usar $this.find("option: not (:disabled)") para obtener la selección. Elementos con el atributo deshabilitado, porque deshabilitado es un atributo estándar.

2-3.zepto intenta utilizar el método prop al operar los atributos seleccionados y seleccionados. La siguiente es la explicación oficial:

3.Zepto está escrito de acuerdo con navegadores estándar, por lo que solo se proporcionan ancho() y alto() para los métodos de tamaño de nodo, y ancho interior(), alto interior(), ancho exterior() y ancho exterior(). height() se omiten.

Zepto.js: determinado por el tamaño de la caja

JQery: ignora el modelo de caja y siempre devuelve el ancho/alto del área de contenido (excluyendo el relleno y). borders).css('width ') en lugar de .width()

3-1. Obtén el ancho y alto del triángulo del borde

Supongamos que dibujas uno con el. siguiente HTML y CSS Triángulo pequeño:

ltdiv class="caret " > lt/div gt

Ancho:

. p>

Alto: 0;

Ancho del borde: 0 20px 20px

Color del borde: azul transparente transparente;

Estilo del borde: sin puntos sólidos;

}

JQuery usa .width() y .css('width ') para devolver la misma altura

Zepto ha vuelto. ancho() y 0px. css('ancho').

Entonces, en este escenario, se utiliza jQuery.

ancho exterior()/. altura exterior(); Zepto usa ancho()/. alto().

3-2 .Offset()

Zepto.js: Devuelve arriba, izquierda, ancho y alto.

JQuery: Devuelve ancho y alto.

3-3. Elementos ocultos

Zepto.js: No se puede obtener el ancho y el alto;

JQuery: Se puede obtener.

4. Cada método de Zepto solo puede atravesar matrices, no objetos JSON.

Descripción del parámetro 5.5. Método de producción de animación de Zepto: haga clic en ->

Uso de animar en zepto

6. El nombre de la función de devolución de llamada jsonp de 6.zepto no se puede personalizar.

7.Diferencias de operación DOM

Código Jq:

(función ($) {

$(función() {

p>

var $list = $(' lt;ul gt lt李gtJQuery insert

id: "insertar vía jquery"

});

$ lista . appendto($(' cuerpo '));

});

})(ventana . jquery); >jQuery no se agregará Opere la identificación en ul.

Código Zepto:

Zepto(function($) {

var $ list = $(' lt; ul gt lt 李 gtZepto insert

id: "Insertar por zepto"

});

$ list .

Zepto puede agregar una identificación a ul.

8. Diferencias de activación de eventos

Código Jq:

(function($) {

$(function() {

p>

$script = $('lt;script/>', {

src:' http://cdn.amaze-ui.o rg/amaze-ui /1.0.1 /js/amaze ui . min . js ',

id: "ui-jquery"

});

$ script. ($(' body '));

$script.on('load ', function() {

console.log('se ha cargado el script jQ');

});

});

})(ventana . jquery

Cuando se usa jQuery, el controlador de carga El evento no se ejecutará.

Código Zepto:

Zepto(función($) {

$script = $('lt;script/>;', {

src: 'http://cdn.amaz eui.o rg/amaz eui/1.0.1/js/amaz eui.js',

id: "ui-zepto"

});

$ script . appendto($(' body '));

$script.on('load ', function() {

console.log('se ha cargado el script zepto');

});

});

Cuando utilice Zepto, ejecute el controlador para el evento de carga.