国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Jadual Kandungan
Langkah 1: Kita mesti menyimpan masa tambah nilai terakhir
Langkah 2: Kami memerlukan cara untuk mengendalikan dan menyimpan kiraan tambah nilai
Langkah 3: "Pengguna yang terhormat, mengapa anda tidak mendengar?!"
Bonus: Mari kita kembali!
Membungkus
Rumah hujung hadapan web tutorial css Salah satu cara untuk memecahkan pengguna dari kebiasaan tambah nilai terlalu banyak

Salah satu cara untuk memecahkan pengguna dari kebiasaan tambah nilai terlalu banyak

Apr 13, 2025 am 11:25 AM

Salah satu cara untuk memecahkan pengguna dari kebiasaan tambah nilai terlalu banyak

Tambah nilai halaman adalah satu perkara. Kadang -kadang kita menyegarkan halaman apabila kita fikir ia tidak bertindak balas, atau percaya bahawa kandungan baru tersedia. Kadang-kadang kita hanya marah di tapak dang dan kemarahan-refresh untuk memberitahu ia kita tidak senang.

Tidak senang mengetahui bila pengguna menyegarkan halaman? Bukan hanya itu, tetapi berapa kali? Data itu dapat membantu kita mencetuskan beberapa tingkah laku selepas beberapa tambah nilai.

Tapak sukan adalah contoh yang baik. Jika saya ingin menyemak skor permainan yang sedang berjalan tetapi skor tidak hidup-dimatikan, maka saya mungkin mendapati diri saya menyegarkan sekumpulan.

Matlamat kami adalah untuk memecahkan pengguna daripada kebiasaan itu. Kami akan menggunakan kuasa penghitungan semula halaman kami untuk membiarkan orang tahu bahawa penyegaran tidak perlu, terima kasih kepada kemas kini skor masa nyata. Dan jika mereka memuat semula lebih daripada tiga kali? Kami akan menendang keluar dari sesi mereka. Itu akan menunjukkan kepada mereka.

Berikut adalah demo mudah konsep itu.

Mari buat semula bersama-sama. Tetapi sebelum kita pergi, terdapat beberapa soalan yang perlu kita jawab sebelum kita mula pengekodan:

  • Bagaimanakah kita dapat meneruskan bilangan pengguna yang dimuat semula di laman web ini? Kami memerlukan tempat untuk menyimpan bilangan kali pengguna memuat semula tapak (ReloadCount), tempat ini perlu berterusan nilai antara tambah nilai - LocalStorage terdengar seperti penyelesaian yang baik.
  • Bagaimanakah kita mengesan jika pengguna memuat semula laman web atau hanya kembali selepas beberapa jam? Sekiranya kami menyimpan ReloadCount di LocalStorage, ia akan mengekalkan nilai antara tambah nilai, tetapi ia akan menyimpan nilai itu sehingga kami menghapuskan secara pemrograman atau membersihkan penyimpanan penyemak imbas. Ini bermakna jika kita kembali selepas beberapa jam laman web ini masih ingat ReloadCount terakhir dan boleh melakukan logout selepas menyegarkan pertama tanpa amaran. Kami mahu mengelakkannya dan membenarkan pengguna memuat semula tapak dua kali setiap kali pengguna kembali selepas beberapa tempoh masa. Kalimat terakhir itu memegang jawapan kepada soalan itu. Kami perlu menyimpan masa apabila pengguna meninggalkan tapak dan kemudian apabila tapak dimuat sekali lagi periksa apabila itu berlaku. Jika tempoh masa itu tidak cukup lama, kami mengaktifkan logik pengiraan semula.
  • Bagaimana kita tahu bila pengguna meninggalkan laman web ini? Untuk menyimpan masa itu, kami menggunakan acara tetingkap sebelum ini dan menyimpan nilai yang di LocalStorage.

Ok, sekarang kita mempunyai jawapan, mari kita menyelam ke dalam kod.

Langkah 1: Kita mesti menyimpan masa tambah nilai terakhir

Kami akan menyimpan masa tambah nilai terakhir menggunakan acara tetingkap sebelum ini. Kami memerlukan dua perkara: (1) pendengar acara yang akan mendengar peristiwa dan api kaedah yang sesuai, dan (2) kaedah kami sebelum ini.

Pertama, mari kita buat fungsi yang dipanggil InitialiserEloadCount yang akan menetapkan pendengar acara kami menggunakan kaedah AddEventListener pada objek tetingkap.

 fungsi initierizereloadCount () {
  Window.AddEventListener ("Sebelum Sunload", Sebelumnya MUNGKIN)
}

Kemudian kami membuat kaedah kedua yang akan dipecat sebelum kami meninggalkan laman web ini. Kaedah ini akan menjimatkan masa penyegaran berlaku di LocalStorage.

 fungsi sebelum ini muat turun () {
  localStorage.setItem ("lastunloadat", math.floor (date.now () / 1000))
  window.removeEventListener ("sebelum ini", sebelum iniDander);
}

Langkah 2: Kami memerlukan cara untuk mengendalikan dan menyimpan kiraan tambah nilai

Sekarang kita mempunyai masa apabila tapak ditutup terakhir, kita boleh meneruskan dan melaksanakan logik yang bertanggungjawab untuk mengesan dan mengira berapa kali laman web itu dimuat semula. Kami memerlukan pembolehubah untuk memegang ReloadCount kami dan memberitahu kami berapa kali pengguna memuatkan semula laman web ini.

 Biarkan ReloadCount = Null

Kemudian, dalam fungsi InitialiserEloadCount kami, kita perlu melakukan dua perkara:

  1. Semak jika kami sudah mempunyai nilai ReloadCount yang disimpan di LocalStorage kami, dan jika ya, dapatkan nilai itu dan simpannya di ReloadCount kami. Jika nilai tidak wujud, ini bermakna pengguna memuatkan tapak untuk kali pertama (atau sekurang -kurangnya tidak memuat semula). Dalam hal ini, kami menetapkan ReloadCount kepada sifar dan menyimpan nilai itu ke LocalStorage.
  2. Mengesan jika tapak dimuat semula atau pengguna kembali ke tapak selepas tempoh masa yang lebih lama. Ini adalah tempat di mana kita memerlukan nilai terakhir kita. Untuk mengesan jika tapak itu sebenarnya dimuat semula, kita perlu membandingkan masa apabila tapak dimuatkan (masa semasa) dengan nilai LastunLoadat. Sekiranya kedua -dua mereka berlaku di dalamnya, katakan, lima saat (yang benar -benar sewenang -wenangnya), itu bermakna pengguna memuat semula laman web dan kami harus menjalankan logik kiraan semula. Jika tempoh masa antara kedua -dua peristiwa itu lebih lama, kami menetapkan semula nilai ReloadCount.

Dengan itu, mari buat fungsi baru yang dipanggil CheckReload dan simpan logik itu di sana.

 fungsi checkReload () {
  jika (localStorage.getItem ("ReloadCount")) {
    ReloadCount = ParseInt (localStorage.getItem ("ReloadCount"))
  } else {
    ReloadCount = 0
    localStorage.setItem ("ReloadCount", ReloadCount)
  }
  jika (
    Math.floor (date.now () / 1000) - localStorage.getItem ("lastunloadat") <p> Fungsi terakhir yang kita perlukan dalam langkah ini adalah kaedah yang bertanggungjawab untuk apa yang berlaku apabila kami mengesahkan bahawa pengguna memuat semula tapak tersebut. Kami panggil fungsi itu onreloadDetected, dan di dalamnya, kami meningkatkan nilai ReloadCount. Jika pengguna menyegarkan laman web ketiga kali, kami menjatuhkan bom dan memanggil logik logout kami.</p><pre rel="JavaScript"> fungsi onreloadDetected () {
  ReloadCount = ReloadCount 1
  localStorage.setItem ("ReloadCount", ReloadCount)
  jika (reloadcount === 3) {
    logout ()
  }
}

Langkah 3: "Pengguna yang terhormat, mengapa anda tidak mendengar?!"

Dalam langkah ini, kami melaksanakan logik yang bertanggungjawab untuk keadaan apabila pengguna memuatkan semula tapak tersebut ke titik melanggar ambang tiga batas kami, walaupun amaran kami yang jelas untuk berhenti melakukannya.

Apabila itu berlaku, kami memanggil API kami untuk log keluar pengguna, maka kami membersihkan semua sifat yang berkaitan dengan logik kiraan tambah nilai. Itu akan membolehkan pengguna kembali dan mempunyai akaun yang bersih untuk tambah nilai. Kami juga boleh mengalihkan pengguna di suatu tempat yang berguna, seperti skrin log masuk. (Tetapi tidakkah lucu untuk menghantarnya ke sini?)

 fungsi logout (params) {
  // Panggilan API Logout
  ResetReloadCount ()
}

fungsi resetReloadCount () {
  Window.RemoveEventListener ("Sebelum Sunload", Sebelum SunLoadHandler)
  localStorage.RemoveItem ("LastUnloadat")
  localStorage.removeItem ("ReloadCount");
}

Bonus: Mari kita kembali!

Sekarang kita mempunyai logik yang dilaksanakan, mari kita lihat bagaimana dapat memindahkan logik itu ke tapak Vue berdasarkan contoh ini:

Pertama, kita perlu memindahkan semua pembolehubah kita ke dalam data komponen kita, di mana semua alat reaktif hidup.

 Eksport Lalai {
  data () {
    kembali {
      ReloadCount: 0,
      WarningMessages: [...]
    }
  },

Kemudian kami memindahkan semua fungsi kami ke kaedah.

 // ...
  Kaedah: {
    SebelumNoLoadHandler () {...},
    checkReload () {...},
    logout () {...},
    onReloadDetected () {...},
    ResetReloadCount () {...},
    InisierIserEloadCount () {...}
  }
// ...

Oleh kerana kita menggunakan Vue dan sistem kereaktifannya, kita boleh menggugurkan semua manipulasi DOM langsung (contohnya Document.GetElementById ("APP"). InnerHTML) dan bergantung kepada harta data WARNINGMESSAGES kami. Untuk memaparkan mesej amaran yang betul, kami perlu menambah harta yang dikira yang akan dikira semula setiap kali ReloadCount kami diubah supaya kami dapat mengembalikan rentetan dari amaran kami.

 dikira: {
  WarningMessage () {
    kembali ini.warningmessages [this.reloadcount];
  }
},

Kemudian kami boleh mengakses harta yang dikira kami secara langsung dalam templat komponen.

 <pemat>
  <dana>
    <p> {{WarningMessage}} </p>
  
</dana></pemat>

Perkara terakhir yang perlu kita lakukan ialah mencari tempat yang betul untuk mengaktifkan logik pencegahan tambah nilai. Vue datang dengan cangkuk kitaran hayat komponen yang betul -betul apa yang kita perlukan, khususnya cangkuk yang dicipta. Mari kita jatuhkannya.

 // ...
  dicipta () {
    this.initializerEloadCount ();
  },
// ...

Bagus.

Membungkus

Dan di sana, logik yang memeriksa dan mengira berapa kali halaman telah disegarkan. Saya harap anda menikmati perjalanan dan anda mendapati penyelesaian ini berguna atau sekurang -kurangnya memberi inspirasi untuk melakukan sesuatu yang lebih baik. ?

Atas ialah kandungan terperinci Salah satu cara untuk memecahkan pengguna dari kebiasaan tambah nilai terlalu banyak. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial PHP
1502
276
Tutorial CSS untuk membuat pemuatan dan animasi pemuatan Tutorial CSS untuk membuat pemuatan dan animasi pemuatan Jul 07, 2025 am 12:07 AM

Terdapat tiga cara untuk membuat pemutar pemuatan CSS: 1. Gunakan pemutar asas sempadan untuk mencapai animasi mudah melalui HTML dan CSS; 2. Gunakan pemutar tersuai pelbagai mata untuk mencapai kesan lompat melalui masa kelewatan yang berlainan; 3. Tambahkan pemutar dalam butang dan beralih kelas melalui JavaScript untuk memaparkan status pemuatan. Setiap pendekatan menekankan pentingnya butiran reka bentuk seperti warna, saiz, kebolehcapaian dan pengoptimuman prestasi untuk meningkatkan pengalaman pengguna.

Menangani masalah dan awalan keserasian penyemak imbas CSS Menangani masalah dan awalan keserasian penyemak imbas CSS Jul 07, 2025 am 01:44 AM

Untuk menangani keserasian pelayar CSS dan isu awalan, anda perlu memahami perbezaan sokongan penyemak imbas dan menggunakan awalan vendor dengan munasabah. 1. Memahami masalah biasa seperti Flexbox dan sokongan grid, kedudukan: prestasi tidak sah, dan prestasi animasi adalah berbeza; 2. Periksa status sokongan ciri CANIUSE Ciri; 3. Gunakan dengan betul -webkit-, -moz-, -ms-, -o- dan awalan pengeluar lain; 4. Adalah disyorkan untuk menggunakan autoprefixer untuk menambah awalan secara automatik; 5. Pasang postcss dan konfigurasi penyemak imbas untuk menentukan penyemak imbas sasaran; 6. Secara automatik mengendalikan keserasian semasa pembinaan; 7. Ciri -ciri pengesanan moden boleh digunakan untuk projek lama; 8. Tidak perlu meneruskan konsistensi semua pelayar,

Apakah perbezaan antara paparan: inline, paparan: blok, dan paparan: blok sebaris? Apakah perbezaan antara paparan: inline, paparan: blok, dan paparan: blok sebaris? Jul 11, 2025 am 03:25 AM

Themaindifferencesbetweendisplay: inline, block, andinline-blockinhtml/cssarelayoutbehavior, spaceusage, andstylingcontrol.1.inlineelementsflowwithtext, notstartonNewlines, abaikanwidth/height, andonyapplylylylylylinddding/

Gaya yang dikunjungi pautan berbeza dengan CSS Gaya yang dikunjungi pautan berbeza dengan CSS Jul 11, 2025 am 03:26 AM

Menetapkan gaya pautan yang telah anda lawati dapat meningkatkan pengalaman pengguna, terutama di laman web yang berintensifkan kandungan untuk membantu pengguna menavigasi lebih baik. 1. Gunakan CSS: Kelas pseudo yang dilawati untuk menentukan gaya pautan yang dikunjungi, seperti perubahan warna; 2. Perhatikan bahawa penyemak imbas hanya membenarkan pengubahsuaian beberapa atribut disebabkan oleh sekatan privasi; 3. Pemilihan warna harus diselaraskan dengan gaya keseluruhan untuk mengelakkan ketangkasan; 4. Terminal mudah alih mungkin tidak memaparkan kesan ini, dan disyorkan untuk menggabungkannya dengan arahan visual lain seperti logo tambahan ikon.

Membuat bentuk tersuai dengan laluan klip CSS Membuat bentuk tersuai dengan laluan klip CSS Jul 09, 2025 am 01:29 AM

Gunakan atribut clip-path CSS untuk menanam unsur-unsur ke dalam bentuk tersuai, seperti segitiga, takik bulat, poligon, dan lain-lain, tanpa bergantung pada gambar atau SVG. Kelebihannya termasuk: 1. Menyokong pelbagai bentuk asas seperti Circle, Ellipse, Polygon, dan lain -lain; 2. Pelarasan responsif dan boleh disesuaikan dengan terminal mudah alih; 3. Mudah untuk animasi, dan boleh digabungkan dengan hover atau javascript untuk mencapai kesan dinamik; 4. Ia tidak menjejaskan aliran susun atur, dan hanya tanaman kawasan paparan. Penggunaan umum adalah seperti laluan klip bulat: bulatan (50pxatcenter) dan triangle clip-path: polygon (50%0%, 100 0%, 0 0%). Notis

Bagaimana untuk membuat imej responsif menggunakan CSS? Bagaimana untuk membuat imej responsif menggunakan CSS? Jul 15, 2025 am 01:10 AM

Untuk membuat imej responsif menggunakan CSS, ia boleh dicapai terutamanya melalui kaedah berikut: 1. Gunakan maksimum lebar: 100% dan ketinggian: auto untuk membolehkan imej menyesuaikan diri dengan lebar kontena sambil mengekalkan perkadaran; 2. Gunakan atribut SRCSET dan saiz HTML dengan bijak memuatkan sumber imej yang disesuaikan dengan skrin yang berbeza; 3. Gunakan objek-sesuai dan kedudukan objek untuk mengawal penanaman imej dan paparan fokus. Bersama -sama, kaedah ini memastikan bahawa imej dibentangkan dengan jelas dan indah pada peranti yang berbeza.

Unit CSS Demystifying: PX, EM, REM, VW, VH Perbandingan Unit CSS Demystifying: PX, EM, REM, VW, VH Perbandingan Jul 08, 2025 am 02:16 AM

Pilihan unit CSS bergantung kepada keperluan reka bentuk dan keperluan responsif. 1.PX digunakan untuk saiz tetap, sesuai untuk kawalan yang tepat tetapi kekurangan keanjalan; 2.EM adalah unit relatif, yang mudah disebabkan oleh pengaruh unsur induk, sementara REM lebih stabil berdasarkan unsur akar dan sesuai untuk skala global; 3.VW/VH didasarkan pada saiz viewport, sesuai untuk reka bentuk yang responsif, tetapi perhatian harus dibayar kepada prestasi di bawah skrin yang melampau; 4. Apabila memilih, ia harus ditentukan berdasarkan sama ada pelarasan responsif, hubungan hierarki elemen dan ketergantungan viewport. Penggunaan yang munasabah boleh meningkatkan fleksibiliti dan penyelenggaraan susun atur.

Apakah ketidakkonsistenan penyemak imbas CSS biasa? Apakah ketidakkonsistenan penyemak imbas CSS biasa? Jul 26, 2025 am 07:04 AM

Penyemak imbas yang berbeza mempunyai perbezaan dalam parsing CSS, mengakibatkan kesan paparan yang tidak konsisten, terutamanya termasuk perbezaan gaya lalai, kaedah pengiraan model kotak, flexbox dan tahap sokongan susun atur grid, dan tingkah laku yang tidak konsisten bagi atribut CSS tertentu. 1. Pemprosesan gaya lalai tidak konsisten. Penyelesaiannya adalah menggunakan cssreset atau normalisasi.css untuk menyatukan gaya awal; 2. Kaedah pengiraan model kotak versi lama IE adalah berbeza. Adalah disyorkan untuk menggunakan kotak-kotak: kotak sempadan dengan cara yang bersatu; 3. Flexbox dan grid melakukan secara berbeza dalam kes kelebihan atau dalam versi lama. Lebih banyak ujian dan gunakan autoprefixer; 4. Beberapa tingkah laku atribut CSS tidak konsisten. CANIUSE mesti dirujuk dan diturunkan.

See all articles