javascript - Tanya soalan kecil tentang acara permulaan sentuh
仅有的幸福
仅有的幸福 2017-06-08 11:03:12
0
2
906

Ada sekeping kod yang saya keliru

var clickEventType=((document.ontouchstart!==null)?'click':'touchstart');

Jika tertera document.ontouchstart!==null, ini bermakna permulaan sentuh tersedia, dan ia sepatutnya seperti ini:

var clickEventType=((document.ontouchstart!==null)?'touchstart':'click')

Mengapa ia ditulis seperti di atas?

仅有的幸福
仅有的幸福

membalas semua(2)
巴扎黑

Jika ditulis sebagai

var clickEventType=((typeof document.ontouchstart ==="undefined")?'click':'touchstart')

Anda akan faham, ontoucstartdoucment对象的一个属性,但是ontouchstart 指向函数的的一个引用,也就是ontouchstart指向一个对象,未指向时,ontouchstart 需要一个初始值 ,这个初始值是null,如果支持touchstart事件,那ontouchstart初始值设为null, jadi ditulis begini

typecho
document.ontouchstart == null;

Ini menunjukkan bahawa penyemak imbas semasa menyokong ontouchstart, kerana jika ia tidak menyokongnya, document.ontouchstart的值是undefined
,再者document.ontouchstart没有被绑定事件的情况下就是等于null, 所以你才可以这样使用document.ontouchstart = function(){};

Nilai awal adalah Null Jika tidak sama dengan null, boleh dikatakan ia tidak disokong

document.ontouchstart !== null;
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan