Artikel ini menganalisis solusi untuk masalah yang tidak dapat memanggil fungsi parameter dalam JS. Bagikan untuk referensi Anda, sebagai berikut:
Solusi: Tulis ulang metode setTimeout () dan gunakan fungsi penutupan. sebagai berikut:
var _st = window.setTimeout; window.setTimeout = function (fref, mdelay) {if (typeof fref == 'function') {var argu = array.prototype.slice.call (argumen, 2); var f = function () {fref.Apply (null, argu); }; return _st (f, mdelay); } return _st (fref, mdelay);}Dengan penulisan ulang seperti itu, saat menggunakan setTimeout () untuk memanggil fungsi parameter, Anda dapat menggunakan formulir berikut:
setTimeout (fun, 10, param);
dimana kesenangan adalah fungsinya; 10 adalah siklus panggilan, unit ini milidetik; param adalah parameter fungsi menyenangkan.
Cara lain yang lebih sederhana:
function moving (id, target_x, target_y, t) {var ele = document.geteLementById (id); // alert ("Divobject:"+ele) var xpos = parseInt (ele.style.left); //alert(ele.style.left) var ypos = parseInt (ele.style.top); if (xpos <target_x) {xpos ++; } if (ypos <target_y) {ypos ++; } ele.style.left = xpos + "px"; ELE.STYLE.TOP = YPOS+"PX"; // Fungsi itu sendiri disebut rekursif, dieja ke dalam bentuk string, perhatikan kutipan parameter pertama var ulangi = "pindahkan ('"+id+"',"+target_x+","+target_y+","+t+")"; var movment = setTimeout (ulangi, t);}Untuk informasi lebih lanjut tentang konten terkait JavaScript, silakan periksa topik -topik situs ini: "Ringkasan Efek dan Teknik Peralihan Javascript", "Ringkasan Keterampilan Algoritma Pencarian JavaScript", "Ringkasan Teknik Animasi dan Teknik JavaScript," Ringkasan Ringkasan Data Javascript dan Ringkasan Data Javascript "," Ringkasan Data JavaScript "," Ringkasan Data JavaScript "," Ringkasan DEBUGRITM PENGABUNG DAN RINGKASI DAGGING "RINGKASI DAN RINGKASAN DATRICKS" RINGKASI DAN RINGKASI DAGGING "RINGKASI DAN RINGKASI DAGGING" RINGKAS Algoritma dan teknik traversal javascript ", dan" Ringkasan Penggunaan Operasi Matematika JavaScript "
Saya harap artikel ini akan membantu pemrograman JavaScript semua orang.