*Giải thích cách hoạt động của querySelector.bind(document): kzbin.info/www/bejne/bJuck2WVephngK8 Nhiệm vụ còn lại dành cho các bạn: 1. Hạn chế tối đa các bài hát bị lặp lại 2. Fix lỗi khi tua bài hát, click giữ một chút sẽ thấy lỗi, vì event updatetime nó liên tục chạy dẫn tới lỗi 3. Fix lỗi khi next tới 1-3 bài đầu danh sách thì không “scroll into view” 4. Lưu lại vị trí bài hát đang nghe, F5 lại ứng dụng không bị quay trở về bài đầu tiên 5. Thêm chức năng điều chỉnh âm lượng, lưu vị trí âm lượng người dùng đã chọn. Mặc định 100%
@thang86173 жыл бұрын
e chỉ biết fix cái số 2 😑
@nguyenphuongnam12323 жыл бұрын
@@thang8617 chia sẽ cách với bạn ơi
@baoduy71983 жыл бұрын
@@thang8617 quan tâm
@thang86173 жыл бұрын
Đơn giản mà. Đầu tiên tạo 1 biến boolean tên là isTimeupdate gán bằng true, sau đó đưa biến đó vào phần if trong progress.ontimeupdate. Tiếp theo tạo một sự kiện khi người dùng chạm vào thanh progress. Khi người dùng chạm vào sẽ gán isTimeupdate bằng false. Sau đó gán lại biến isTimeupdate bằng true trong progress.onchange khi người dùng đã tua xong thôi, hihi
@juhandvan3 жыл бұрын
@@thang8617 Cái chức năng tua, sao mình test bằng cách fix giá trị mà nó vẫn không hoạt động nhỉ: progress.onchange = function (e) { audio.currentTime = 100; }; Mình nghĩ không phải do sự kiện audio.ontimeupdate vì mình comment nó lại rồi vẫn không được, không hiểu lý do là gì
@tripham88643 жыл бұрын
Nhờ học khoá JavaScript của a, e có đủ kiến thức tự tin để học tiếp react. Respect
@angminhuc66743 жыл бұрын
Cảm ơn anh rất nhiều ạ, nhờ có các khoá học của anh mà em đã có thể tự ngồi mày mò được các fw như React với Vue và em cũng mới xin được làm thực tập ở một công ty, ra tết em sẽ đi làm. Chúc anh và gia đình có một năm mới dồi dào sức khoẻ, an khang thịnh vượng, vạn sự như ý ạ.
@angminhuc66742 жыл бұрын
@@2eem đúng r bạn, bạn cứ học kỹ từng video một và hiểu được những gì a Sơn nói thì thoải mái đi làm bạn nhé.
@thanhdanhhonguyen33102 жыл бұрын
Mình đang học java scrip ở f8 mà chưa thấy a sơn ra clip hướng dẫn thực tế để áp dụng
@locit90463 жыл бұрын
cuối cùng thì sau gần 5 tháng thì cũng tới được phần này rồi hơi chậm nhưng thật vui vì bản thận đã lỗ lực hết mình cảm ơn anh Sơn Đặng thật là nhiều ạ
@igdev60953 жыл бұрын
1:05:04 cho các b ko hiểu chỗ while đó, vd lần đầu gọi hàm random thì newIndex nó ra 8, sau đó nó chạy xún "while" để kiểm tra thì 8 khác currentIndex là 0 nên nó thoát vòng lặp, nhưng vd lần gọi hàm tiếp theo nó ra 0 thì chạy xún vòng "while" thỏa điều kiện "0 === 0" thì nó chạy lên hàm "do" lần nữa, chạy khi nào nó ra khác điều kiện là 0 thì thoy :D
@udemytiengviet9562 жыл бұрын
chỗ này có bug đó bạn , lúc hủy random thì nó vẫn dính 1 index của Do nữa rồi mới hoàn toán đúng logic . Bạn test lại xem :v
@htuanqn4 ай бұрын
@@udemytiengviet956 là sao bạn ?? "do while" là chạy xong rồi mới kiểm tra, thì đương nhiên nó phải dính rồi nó mới kiểm tra chứ ??
@BDCCNVuMinhQuang3 жыл бұрын
Theo e là khi anh code HTML CSS thì a cũng quay lại quá trình code rồi up vào list HTML a ạ, học như vậy e thấy thú vị vì mình làm hết được project
@F8VNOfficial3 жыл бұрын
Thank em nha
@babayaga3303 Жыл бұрын
Mới đó mà gần 2 năm kỉ niệm đi thực tập rồi, kinh nghiệm thực tế cũng được 1,5 exp. Xem lại kỉ niệm ngày xưa code music player vui biết bao ^^, nếu không có anh Sơn thì chắc mình sẽ bỏ nghề mất.
@giahuyha61893 жыл бұрын
1. 2. đổi onchange thành oninput 3. đổi nearest thành center 4. 5.
@chovycon30562 жыл бұрын
Bạn cho mình hỏi sao bạn biết được onchange thành oninput hay v . Mình cảm ơn
@nghiahoang9201 Жыл бұрын
@@chovycon3056 .
@thienvu13773 жыл бұрын
Cảm ơn vì những chia sẻ của a, năm mới e chúc anh nhiều sức khỏe và thành công hơn nhé! :D Mong rằng năm nay có thêm khóa react của a :3
@KhangNguyen-kq2iw3 жыл бұрын
Cảm ơn thầy vì năm vừa qua nhé, nhờ kênh thầy mn học đc rất nhiều, chúc thầy năm mới vui vẻ và nhiều sức khỏe bên gđ
@laptrinhfullstack3 жыл бұрын
Cảm ơn anh và chúc anh một năm mới vui vẻ..mong anh có thật nhiều sức khỏe để ra nhiều ví dụ hơn nữa để mọi ng áp dụng kiến thức JavaScript vào ạ
@thang86173 жыл бұрын
Anh làm video ẩn/hiện header theo tốc độ cuộn trang như của ứng dụng KZbin và fb trên di động đi anh. Tức là mình cuộn từ từ thì thanh header cũng từ từ ẩn/hiện đi, cuộn nhanh thì nó ẩn/hiện nhanh đấy ạ
@hieptranduy35833 жыл бұрын
Chúc anh cùng f8 năm mới thật nhiều sức khỏe, thành công ạ
@hoangngoc119063 жыл бұрын
Chúc mừng năm mới anh Sơn, chúc anh càng ngày càng phát triển F8 tiến xa hơn
@datwilliama23 жыл бұрын
chúc anh sơn năm mới vui vẻ, sự nghiệp thăng tiến, và quan trọng là ra clip đều đều :3
@vinhlam88873 жыл бұрын
Hay anh ơi. Kênh của anh vừa học vừa thực hành luôn nên học đỡ nản mà rất cuốn
@dotuanthanh3 жыл бұрын
cảm ơn anh vì chia kiến thức , kĩ năng anh chia sẻ , chúc anh va gia đình năm mới thật nhiều sức khoẻ , thành công , hạnh phúc
@juhandvan3 жыл бұрын
Món quà lì xì đầu năm rất ý nghĩa. Cám ơn anh Sơn nhiều và chúc cho F8 sẽ có một năm 2021 thành công rực rỡ. À a Sơn quê ở đâu vậy ạ
@uynguyen26073 жыл бұрын
Có thông báo em vào xem luôn. Em chúc anh Sơn năm mới mạnh khoẻ, vui vẻ và thành thành công nhé. Và sớm ra thêm nhiều khoá học bổ ích cho bọn em nhé 😊😊😊
@risket2113 жыл бұрын
Hay quá anh ơi. Thật ngưỡng mộ anh. Chúc anh năm mới nhiều sức khoẻ và gặp nhiều điều may mắn.
@longthanhvu84153 жыл бұрын
Chúc mừng năm mới anh ! Mong anh có nhiều sức khỏe vào niềm vui trong cuộc sống nhé
@danhlevu64723 жыл бұрын
mỗi lần a Sơn bật nhạc chạy thấy anh lắc đầu theo nhìn tếu thiệt :))
@datwilliama23 жыл бұрын
quá xịn luôn anh ơi, mỗi lần xem video của anh là em lại biết thêm được vài kiến thức mới hehe
@minhtaingo91823 жыл бұрын
trong 2021 e sẽ quyết tâm đạt được mục tiêu mà mình đưa ra. (để tạm ở đây khi nào nản thì lấy ra xem) :))
@F8VNOfficial3 жыл бұрын
Cố lên em
@voducthang163 жыл бұрын
Chúc anh một năm mới bình an, vui vẻ và hạnh phúc bên gia đình và người thân
@ProgramingUni3 жыл бұрын
Tuyệt vời quá anh, năm mới đặt mục tiêu gì là làm được mục tiêu đó nha các bạn.
@HuyTran-ge7ie3 жыл бұрын
Chúc mừng nắm mới a. Cảm ơn nhưng gì a đã chia sẻ năm 2020
@huydoan268953 жыл бұрын
bài giảng của anh quá hay và chi tiết, cám ơn anh Sơn Đặng nhiều ^^
@nguyenthanh25243 жыл бұрын
Chúc mừng năm mới a và mọi người nhé
@linhtranbao47323 жыл бұрын
Đoạn 16:16 theo mình mình nghĩ không phải là do kéo nhanh quá đâu mà do scrollTop nó lớn hơn 200 nên newcdWidth = 200 - 300(minh ví dụ) nên nó nhỏ hơn 0
@LamVu-dv2bi2 жыл бұрын
scroll nhanh nên không bắt đc cái khúc = 0 mà qua âm luôn vẫn còn hình
@duyanh69092 жыл бұрын
thì vẫn do kéo nhanh đó :vv nếu bạn kéo chậm đến đoạn 200 thì dù bạn có kéo xuống nữa thì nó cũng đã ẩn rồi nên giá trị âm cũng k sao
@sonle23-j2d3 жыл бұрын
Chúc mừng anh năm mới vui vẻ và gia đình anh có nhiều sức khoẻ
@quynguyen-cy5by3 жыл бұрын
:v phọt cơm cái đoạn kiến thức cơ bản , nhưng cơ bản chưa chắc dễ , cơ bản quá dễ khi code chạy đc loạn lun anh =))
@phatnguyenthanh3620 Жыл бұрын
anh ơi có cách nào đưa cái animate về ban đầu khi next sang bài mới ko ạ?
@xuantuongbui82923 жыл бұрын
Làm video học react js trong 1 video đi anh :(
@nguyennhatkhanh46103 жыл бұрын
cảm ơn anh. Chúc anh năm mới vui vẻ. Content video này rất ok, nhưng chất lượng video hơi thấp, hơi khó đọc code ở darkmode. Để mai em lên PC xem thử. Lần nữa chúc anh và gia đình năm mới nhiều sức khoẻ
@tientranphuc15472 жыл бұрын
Nay xem đúng có không khí tết luôn. Ae nào xem vào 29 điểm danh nào
@DatLe-tc3fu3 жыл бұрын
chúc mừng năm mới a vs mng nhé 💯❤️🦋
@thanhvo17032 жыл бұрын
Anh cho em hỏi về 1 chút về kĩ thuật anh dùng padding-top ở phút 13:39 thì em có tự test thì thấy nếu bỏ đi padding-top thì height của thẻ cha cũng trở về 0 thì cái padding-top có phải thay vì mình viết thêm 1 cái height cho thẻ cha và thẻ con sẽ kế thừa cái height ấy thông qua thuộc tính inherit thì mình ko cần viết height cho thẻ cha mà chỉ cần để padding-top cho thẻ con thì nó cũng sẽ lấp đầy được cái height của thẻ cha đúng ko anh. Nhưng mà chỉ số 100% này nó lại kế thừa từ width của thằng Cha để nó setup cho cúi height của nó vì khi em comment width:100% đi thì width bằng 0*200. Không biết em hiểu như thế có đúng không anh !
@tuan20162 жыл бұрын
cho mình hỏi dùng extension gì để nó gợi ý thuộc tính vậy ạ. Như 14:25 mình cd. như video mà nó không gợi ý offsetWidth
@nguyenvohoanglong38983 жыл бұрын
Chúc anh năm mới tràn đầy sức khỏe
@doannguyen98833 жыл бұрын
chúc anh năm mới vui vẻ ạ. cảm ơn anh vì những khoá học ahi
@vancongang30922 жыл бұрын
Cám ơn anh, một video tuy dài nhưng vô cùng bổ ích vs những ai đam mê js như e,
@vuongqtvn3 жыл бұрын
Chúc mừng năm mới Anh Sơn
@luubaoncter87343 жыл бұрын
xem video đến phút thứ 6:00 thì chạy đi tìm nhạc, lựa ảnh hết 1 tiếng đồ hồ ạ :V
@TranLamYoutube3 жыл бұрын
=)) me too
@D8manwalking3 жыл бұрын
Video của anh thực sự hữu ích, nhưng lại ít người biết đến quá:((
@trungtrung22483 жыл бұрын
cảm ơn anh nhiều chúc mừng năm mới anh, mong anh luôn giữ được sức khỏe.
@caominhdev3 жыл бұрын
Chờ mãi, cám ơn a Sơn nhiềuuuuuuuuuu
@cuong58613 жыл бұрын
A ơi cho em hỏi. Khi đi làm thì be đưa api fe thì có đưa luôn URL để test trên postman k ạ. Em đang học gọi API mà em thấy ngta test API trên postman mà em k biết đc sao lại có URL như thế. Happy new year nha a
@dohoadangcaptaimienphi2 жыл бұрын
cho mình hỏi là mình muốn ad vào góc bên phải blog spot rồi , sau khi ad thành công viết bài kiểu gì ạ
@phungxuannam26173 жыл бұрын
"Sai bố rồi các bạn ơi" anh Sơn làm em cười sặc luôn
@nhantrinhhuu73933 жыл бұрын
:v
@unk16093 жыл бұрын
Đang định vào học nốt bài của a thì f8 lỗi nên vào lại youtube lun :))
@TuanNguyen-oi3gk2 жыл бұрын
Bạn có thể làm thêm chức năng hiển thị lời karaoke bài hát .lrc như zingmp3, NCT không?
@nguoichoinhac81137 ай бұрын
Thầy ơi làm sao để hiển thị tổng thời gian bài hát và thời gian đang chạy vậy thầy
@thanhduynguyen62532 жыл бұрын
A Sơn và ae cho em hỏi chút, em không biến this thành _this, có phải vì lí do đó khi làm đến bước nextSong phút thứ 53:00 thì nextSong của e biến thành constructor đúng k a ???
@aidan933 жыл бұрын
Happy lunar year a Sơn
2 жыл бұрын
// const c = ..bind() // đối tượng b mượn phương thức A của đối tượng a và gán cho biến c
@viethungoan35093 жыл бұрын
cho e hỏi là phần nhạc đã chạy qua thì css như nào vậy ạ. E cám ơn nhiều
@phucphamvan73103 жыл бұрын
Quá hay anh ơi Tết vẫn làm video☺☺
@HaiNguyen-bx4kr3 жыл бұрын
Respect
@tuongtamnguyen90342 жыл бұрын
anh ơi cónếu thay javascript bằng angularthì có thể viết đc ạ
@BDCCNVuMinhQuang3 жыл бұрын
a ơi ra tiêp những video thực hành ntn đi ạ, hay quá a ơi
@itsupport62542 жыл бұрын
00:04:53 Có cách nào set chiều cao cho position: fixed mà không cần dùng margin cho element tiếp theo không Sơn?
@rainydaytuness2 жыл бұрын
bắt buộc phải set cứng khoảng cách cho element dưới thôi bác ạ, tại fixed nó không chiếm không gian web
@thienhuynh79622 жыл бұрын
Một option khác là không sử dụng position: fixed mà thay vào đó là cho cái playlist scroll được và giới hạn lại chiều cao của nó, nhưng đòi hỏi bạn phải biết xử lý scrollbar nếu không muốn trông ui bị xấu.
@lightd14042 жыл бұрын
nhìn mặt a khi mở play nhạc buồn cười v +))
@thuandev60373 жыл бұрын
Hay quá a ❤❤ ! Khi nào làm game đoán hình đi a
@nghiepnguyen14393 жыл бұрын
Anh ơi, quay tiếp series Nodejs đi anh, mong mỏi từng ngày
@khangta15773 жыл бұрын
Năm mới vui vẻ anh ơiiii
@HoangNamVuong Жыл бұрын
xem tới đoạn 43:20 ông Sơn tính mà phì cười =))), mình cũng hay bị thế lúc vội là não tự nhiên k nghĩ nổi
@F8VNOfficial Жыл бұрын
Mình thì lúc ko vội não cũng thế luôn 😂
@GiangNguyen-cg8nm3 жыл бұрын
cho e hỏi là khi e thử chạy code trên safari của iphone thì khi cho trình duyệt ở background hay khóa màn hình thì code javascript ko chạy tiếp được thì làm sao để khắc phục đc điều này ạ? e cảm ơn ạ :3
@2kvlogs7853 жыл бұрын
Quá tuyệt vời a ơi 👍👍
@huybn19883 жыл бұрын
a cho e hỏi cách lấy link nhạc mp3 như thế nào ạ , em search mãi ko tìm đc. mong a trả lời
@F8VNOfficial3 жыл бұрын
Lên mạng down bài nhạc về source code mà làm cho dễ em ơi
@duongpham-mq6xh3 жыл бұрын
a ơi cho e hỏi là bài hát phải down về à a, với cả mấy cái ảnh của bài hát nữa ạ, e có lên zingmp3 tải ảnh mà k thấy chỗ tải ạ
@quangbinh47972 жыл бұрын
20:55 sao em không app.currentSong được a? thấy báo là app is not defined
@thanhnguyentrung69163 жыл бұрын
A giải thích giúp mình phần css player và playing với
@GiangNguyen-cg8nm3 жыл бұрын
A Sơn ơi, cho em hỏi là em làm thử web này rồi đẩy code lên mạng, nhưng chạy bằng trình duyệt trên iphone thì khi tắt màn hình đi nó ko hoạt động đc tiếp ạ, còn vs android thì vẫn oke ạ. Em tìm cách khắc phục nhưng hình như IOS ko cho web chạy ngầm trên điện thoại nên là việc e muốn nhạc vẫn tiếp tục phát khi tắt màn hình là ko khả thi luôn ạ? E cám ơn a
@ynguyenminh478 Жыл бұрын
cảm ơn anh Sơn nhé. bài này rất hay ạ
@hoangphan23203 жыл бұрын
anh cho em hỏi lấy link âm nhạc thế nào ạ
@trieuthuan89953 жыл бұрын
thanks anh nhén, luôn ủng hộ anh !!
@khanhviet75812 жыл бұрын
Cả video chỉ không hiểu đúng đoạn config ạ, ngoằng thật sự :)) Cảm ơn anh Sơn đã làm vid
@buidu6913 жыл бұрын
a cho em hỏi khi em tua thì audio.currentTime nó vẫn luôn có giá trị 0, mặc dù em đã update cho nó cái seekTime rồi
@nguyenchuong48613 жыл бұрын
Xem về cuối nhìn anh vội mà em vội theo 😅
@thienanghuu6823 жыл бұрын
làm sao vscode đọc được file mp3 nhỉ của e ko đọc được cơ
@SonNguyen-eu2up3 жыл бұрын
A có thể giải thích chỗ _this = this k ạ? Chúc a năm mới vui vẻ
@F8VNOfficial3 жыл бұрын
A giải thích rồi đó mà nhỉ. E chưa hiểu chỗ nào?
@stayhome17563 жыл бұрын
anh ơi em hỏi chút là tại 1:16:13 em không dùng kiểu là ES6 viết cho this.song.map((song,index) => .... mà thay vào đó em dùng function(song,index) {} thì kết quả lại k ra được ạ, đoạn này em chưa rõ ạ, cảm ơn anh ạ
@nguyenminhthanhk16_hl402 жыл бұрын
Của b mới chỉ là function, của a Sơn kia là map nữa mà b :)))
@stayhome17562 жыл бұрын
@@nguyenminhthanhk16_hl40 mình lúc đó là dùng ES6 để viết mà
@nguyenminhthanhk16_hl402 жыл бұрын
@@stayhome1756 ý mình là cái trên es6 là a Sơn duyệt qua từng ele của song luôn ý. Còn caia dưới b ghi function kia nó là 1 function thôi mà đâu đã duyệt qua từng ele của song đâu
@stayhome17562 жыл бұрын
@@nguyenminhthanhk16_hl40 A zô mình hiểu rồi cảm ơn bạn nhé
@BDCCN-VuManhQuang3 жыл бұрын
Happy New Year F8
@huytruongle64103 жыл бұрын
Hóng anh ra khoá python quá 🥳
@khanhbao72693 жыл бұрын
Dạy reactjs đi a ơi
@nguyenquoctuan8910 Жыл бұрын
1.Hạn chế tối đa các bài hát bị lặp lại currentIndex: 0, isPlaying: false, isRandom: false, isRepeat: false, playedIndexes: [], thêm mảng playedIndexes[] loadConfig: function () { this.isRandom = this.config.isRandom this.isRepeat = this.config.isRepeat this.currentIndex = this.config.currentIndex this.playedIndexes.push(this.config.currentIndex) //Object.assign(this, this.config) }, Load bài hát hiện tại push vào mảng playedIndexes playRandomSong: function () { let newIndex do { newIndex = Math.floor(Math.random() * this.songs.length) } while (this.playedIndexes.includes(newIndex)) this.playedIndexes.push(newIndex) if (this.playedIndexes.length === this.songs.length) { this.playedIndexes = [] } this.currentIndex = newIndex this.loadCurrentSong() }, Sửa lại hàm playRandomSong Mỗi bài sẽ chỉ được random 1 lần! 2. Fix lỗi khi tua bài hát, click giữ một chút sẽ thấy lỗi, vì event updatetime nó liên tục chạy dẫn tới lỗi Thay sự kiện onchange thành oninput: progress.oninput = function(e) { const seekTime = audio.duration / 100 * e.target.value audio.currentTime = seekTime }; 3. Fix lỗi khi next tới 1-3 bài đầu danh sách thì không “scroll into view” Thay block: 'nearest' thành block: 'center' scrollToActiveSong: function () { setTimeout(() => { $('.song.active').scrollIntoView({ behavior:'smooth', block: 'center' }) }, 300) }, 4. Lưu lại vị trí bài hát đang nghe, F5 lại ứng dụng không bị quay trở về bài đầu tiên thêm dòng this.currentIndex = this.config.currentIndex vào hàm loadConfig loadConfig: function () { this.isRandom = this.config.isRandom this.isRepeat = this.config.isRepeat this.currentIndex = this.config.currentIndex //Object.assign(this, this.config) }, this.setConfig("currentIndex", this.currentIndex) thêm dòng này vào hàm loadCurrentSong 5. Thêm chức năng điều chỉnh âm lượng, lưu vị trí âm lượng người dùng đã chọn. Mặc định 100% Thêm các icon const app = { currentIndex: 0, isPlaying: false, isRandom: false, isRepeat: false, playedIndexes: [], currentVolume: 0, Thêm biến currentVolume để lưu âm lượng hiện tại // Xử lý tăng giảm âm lượng upVolumeBtn.onclick = function () { console.log(audio.volume) if (audio.volume < 1.0) { audio.volume = parseFloat((audio.volume + 0.1).toFixed(1)); volumeSlider.value = audio.volume; console.log(volumeSlider) _this.setConfig('currentVolume', volumeSlider.value) } } downVolumeBtn.onclick = function () { console.log(audio.volume) if (audio.volume > 0.0) { audio.volume = parseFloat((audio.volume - 0.1).toFixed(1)); volumeSlider.value = audio.volume; console.log(volumeSlider) _this.setConfig('currentVolume', volumeSlider.value) } } // Cập nhật giá trị volume slider khi giá trị volume bị thay đổi audio.onvolumechange = function () { volumeSlider.value = audio.volume; } thêm 2 dong ở hàm loadConfig loadConfig: function () { this.isRandom = this.config.isRandom this.isRepeat = this.config.isRepeat this.currentIndex = this.config.currentIndex this.playedIndexes.push(this.config.currentIndex) volumeSlider.value = this.config.currentVolume audio.volume = this.config.currentVolume //Object.assign(this, this.config) },
@e.galois4940 Жыл бұрын
Hay qua bn
@nguyenquoctuan8910 Жыл бұрын
@@e.galois4940 Cảm ơn bạn
@thanhnguyentrung69163 жыл бұрын
Cho mình hỏi, với lượng lớn bài hát (> 500 bài) thì có nên lưu vào 1thư mục rồi lấy ra từng cái và gán vào songs[ ] như video k?
@F8VNOfficial3 жыл бұрын
Cái này tuỳ tình huống bạn muốn gì thôi. Số lượng lớn thì gây ảnh hưởng tới hiệu năng, nó bị lag hơn vì số lượng DOM elements. Bạn tìm hiểu thêm 2 từ khoá giúp mình là "load more" và "virtual scroll" nhé. Load more là kéo tới đâu tải thêm tới đấy, virtual scroll là kỹ thuật cao hơn, khó hơn, tự động remove những element nằm ngoài vùng nhìn thấy được của trình duyệt để giảm số lượng elements trong DOM, kỹ thuật này đáp ứng đc cả danh sách hàng triệu luôn nhé.
@xuanthuc1893 жыл бұрын
Sơn đúng là tuyệt vời!
@huynhnhathao63392 жыл бұрын
mùng 1 năm nay có cái gì nữa không anh ơi
@tin75002 жыл бұрын
Anh có thể thêm phần hiện thời gian bài hát vào không?
@lightd14042 жыл бұрын
b làm dc chưa phần này mh mới làm dc xong =)))
@nghiahoang9201 Жыл бұрын
@@lightd1404 mình xin code tham khảo với b
@bachhoangofficial2981 Жыл бұрын
có ai vừa xem vừa tội cho ông lái xe k
@HungNguyen-yx4pw2 жыл бұрын
mọi người cho e hỏi muốn thay bài hát làm như nào ạ ?
@dyanh973 жыл бұрын
Anh ơi. sao em không kết nối được với mấy cái path bài hát vậy anh?
@01_lethanhan893 жыл бұрын
mk cũng thế bạn ạ
@dyanh973 жыл бұрын
@@01_lethanhan89 tải mấy bài khác rồi thế vô đi bạn
@tamtt15122 жыл бұрын
Hiện tại link các bài nhạc không sử dụng được nữa á anh, anh chỉ em cách tìm các link thay thế được không ạ
@TungPham-dt6tr Жыл бұрын
bác lấy đc link chưa, cho e xin với
@hungpham-mj8nl3 жыл бұрын
42:50 cho ta thấy không nhất thiết phải giỏi toán để học lập trình
@01_lethanhan893 жыл бұрын
anh ơi sao e không kết nối được mấy cái path ạ
@F8VNOfficial3 жыл бұрын
E tải file về máy rồi link lại nha. Có thể link của anh để lâu nó bị hỏng r e ơi
@animess13433 жыл бұрын
Không tải file mp3 về là bị lỗi reset currentTime = 0 lun anh
@Tolasua1143 жыл бұрын
anh ơi nhạc của em có 5 bài, nó chạy random hết 5 bài xong thì tự dừng. Bây giờ làm sao cho nó tự động chạy lại cả list nhạc ạ ? Kiểu khi e học bài thì e mở cho list nhạc nó chạy miết vậy đến khi e tắt thì thôi ý :(( anh bày e với
@khoatran15353 жыл бұрын
event onended a Sơn có code trong video r mà nhỉ
@nghiemphamthanh81483 жыл бұрын
Em đã học khoá js của anh rồi. Nhưng khi code 1 sản phẩm gì đó em không biết nên sử dụng kiến thức như thế nào hết! Mong anh trả lời comment của em!!!!!!!!!