點擊按鈕滾動到底功能vue的v-on:scroll運用

使用vue自帶的監聽滾動功能v-on:scroll,滾動條變化時,會調用方法?checkScrollStatus,如果滾動條在容器底部時,則隱藏按鈕,否則顯示按鈕,點擊按鈕能一鍵滾動到底部。

<div class="chat-area" ref="chatAreaRef" v-on:scroll="checkScrollStatus">...具體渲染的內容
</div><-- 按鈕 -->
<div @click="scrollBottom" class="scroll-btn" v-show="showScrollBtn"><i class="iconfont icon-a-zhedieiconbeifen5" />
</div>// 樣式 這里因為內容區域是對話框,所以反轉了dom.chat-area {height: 0;flex: 1;overflow-y: auto;display: flex;flex-direction: column-reverse;}

?這里因為內容區域是對話框,所以反轉了dom,所以下面的方法里的container.scrollTop在滾動到底的時候是0,正常的dom不是0

      const chatAreaRef = ref(null)// 檢查滾動狀態并更新按鈕顯示checkScrollStatus() {// 確保DOM已加載if (!chatAreaRef.value) return;const container = chatAreaRef.value;const scrollPosition = container.scrollTop;// console.log('元素內部滾動距離:', scrollPosition);// 內容高度 > 容器高度(存在滾動條)const hasScrollbar = container.scrollHeight > container.clientHeight;// 1. 內容高度 > 容器高度(存在滾動條)if (hasScrollbar) {// 底部對應 scrollPosition = 0 → 隱藏按鈕// 非底部對應 scrollPosition ≠ 0 → 顯示按鈕if (scrollPosition !== 0) {state.showScrollBtn = true} else {state.showScrollBtn = false}} else {state.showScrollBtn = false}// console.log(state.showScrollBtn, '--showScrollBtn--')},// 滾動到底部scrollBottom() {if (!chatAreaRef.value) return;const container = chatAreaRef.value;chatAreaRef.value.scrollTo({top: 0,behavior: 'smooth'});// 滾動后更新按鈕狀態nextTick(() => {methods.checkScrollStatus();})},

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/92910.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/92910.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/92910.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Linux下編譯SLEPc

本文記錄在Linux下編譯安裝SLEPc的流程。 一、下載代碼 git clone https://github.com/slepc/slepc.git cd ./slepc二、安裝依賴 2.1 安裝PETSc 參見: <Linux下編譯安裝PETSc> 2.2 安裝intel oneAPI sudo apt install intel-oneapi-base-toolkit sudo apt install i…

【無標題】qwen3-8b 強化學習訓練后的模型,可以接著 進行其他grpo 強化學習訓練 嗎

ser_count’, 0),)} {((‘valid_user_count’, 1),)} 44 0.0 88 [0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.6, 0.0, 0.6, 0.0, 0.6, 0.0, 0.6] 55 100%|???{‘loss’: 0.0132, ‘grad_norm’: 0.07552657276391983, ‘learning_rate’: 2e-06, ‘num_tokens’: 2098…

IDC權威認可:瑞數信息雙項入選《中國大模型安全保護市場概覽》

近日&#xff0c;國際數據公司IDC正式發布了《中國大模型安全保護市場概覽&#xff0c;2025&#xff1a;全方位安全檢測與防護構建可信AI》報告。本次報告中IDC結合全球統一定義以及中國市場特色&#xff0c;將中國大模型安全保護市場劃分為7個細分領域&#xff0c;并通過對中國…

多智能體(Multi-agent)策略模式:思維鏈CoT和ReAct

參考&#xff1a;https://zhuanlan.zhihu.com/p/704523060 &#x1f3af; 一句話記住 CoT&#xff1a;像“考試時在草稿紙上寫完所有步驟&#xff0c;再抄答案”。ReAct&#xff1a;像“玩密室逃脫&#xff0c;每開一個箱子就去找下一個線索”。 用小學生能聽懂的話 兩個小故事…

ChatGPT指令大全:輸入需求=輸出完整方案

ChatGPT指令大全提供數百個精煉過的指令語句 (提示詞)&#xff0c;讓你充分發揮 ChatGPT 的強大功能 一、核心功能模塊分類 1. 求職與面試 簡歷優化 專業反饋&#xff1a;按面試官視角分析簡歷并提出改進建議量化數據&#xff1a;為經歷添加具體數字&#xff08;如提升效率30…

Java零基礎入門學習知識點2-JDK安裝配置+Maven

文章目錄版本提示參考視頻Maven環境準備一、安裝Java開發工具包&#xff08;JDK&#xff09;二、JDK環境配置三、下載Maven安裝包*四、Maven環境配置&#xff08;可省略&#xff09;*五、驗證安裝&#xff08;上一步沒做&#xff0c;這步無法驗證&#xff0c;可省&#xff09;六…

基于單片機智能衣柜/智能衣櫥設計

傳送門 &#x1f449;&#x1f449;&#x1f449;&#x1f449;其他作品題目速選一覽表 &#x1f449;&#x1f449;&#x1f449;&#x1f449;其他作品題目功能速覽 概述 本設計實現了一種基于單片機的多功能智能衣柜&#xff0c;融合環境檢測、安全防護與用戶交互功能…

自動語音識別(ASR)技術詳解

語音識別&#xff08;Automatic Speech Recognition, ASR&#xff09;是人工智能和自然語言處理領域的重要技術&#xff0c;旨在將人類的語音信號轉換為對應的文本。近年來&#xff0c;深度學習的突破推動語音識別系統從實驗室走入日常生活&#xff0c;為智能助手、實時翻譯、醫…

【MySQL】MySQL 事務和鎖詳解

一、MySQL 事務 1.1 事務介紹 在 MySQL 中&#xff0c;事務&#xff08;Transaction&#xff09; 是一組不可分割的 SQL 操作序列&#xff0c;這些操作要么全部成功執行&#xff0c;要么全部失敗回滾&#xff0c;以此保證數據庫操作的完整性和一致性。 事務將數據庫從一種一致…

虛擬直線閾值告警人員計數算法暑期應用

智慧人員計數助力暑期&#xff1a;技術賦能安全管理的創新實踐一、背景&#xff1a;暑期人流激增下的安全管理挑戰暑期是旅游、商業、交通等場景的客流高峰期&#xff0c;人員密集區域易引發踩踏事故、管理混亂等安全隱患。傳統人工計數方式效率低、誤差大&#xff0c;難以滿足…

SQL164 2021年11月每天新用戶的次日留存率

SQL164 2021年11月每天新用戶的次日留存率 思路 ?找出新用戶?&#xff1a;確定每個用戶首次活躍的日期&#xff08;即新用戶&#xff09; 例如101用戶在11月1日首次出現 ?處理跨天活躍?&#xff1a;考慮用戶可能跨天活躍的情況&#xff08;in_time和out_time不在同一天&a…

基于單片機的數字電壓表設計

2 系統原理及基本框圖 如圖2.1所示&#xff0c;模擬電壓經過檔位切換到不同的分壓電路衰減后&#xff0c;經隔離干擾送到A/D轉換器進行A/D轉換&#xff0c;然后送到單片機中進行數據處理。處理后的數據送到LCD中顯示&#xff0c;同時通過串行通訊與上位機通信。圖2.1系統基本方…

[NLP]UPF基本語法及其在 native low power verification中的典型流程

UPF基本語法及其在 native low power verification中的典型流程 摘要:本文首先簡要介紹 UPF(Unified Power Format),然后解釋其在 native low power verification(原生低功耗驗證)中的典型流程。最后,我將使用50個具體例子來完整展示 UPF 的關鍵語法。這些例子基…

fish-speech 在50系列顯卡使用 --compile加速兼容

#環境說明 GPU: NVIDIA GeForce RTX 5080 Laptop GPU (sm_120) win11家庭版 24H2 #問題匯總 baize.exceptions.HTTPException: (500, "RuntimeError: ptxas failed with error code 4294967295: \\n\\n") 問題匯總 1 baize.exceptions.HTTPException: (500, "…

UI自動化測試實戰

Python接口自動化測試零基礎入門到精通&#xff08;2025最新版&#xff09;一、設計背景 隨著IT行業的發展&#xff0c;產品愈漸復雜&#xff0c;web端業務及流程更加繁瑣&#xff0c;目前UI測試僅是針對單一頁面&#xff0c;操作量大。為了滿足多頁面功能及流程的需求及節省工…

面試實戰,問題六,被問數據庫索引,怎么回答

Java開發面試&#xff1a;數據庫索引的原理及常見問題解答 在Java開發面試中&#xff0c;數據庫索引是核心知識點&#xff0c;涉及數據庫優化和性能調優。索引通過高效的數據結構加速數據檢索&#xff0c;降低磁盤IO成本&#xff0c;并支持排序操作。下面我將逐步解釋索引的原理…

ARM-I2C硬實現

硬件I2C-GD32F4系列的實現初始化操作在初始化函數里執行以下代碼uint32_t i2cx_scl_port_rcu RCU_GPIOB; uint32_t i2cx_scl_port GPIOB; uint32_t i2cx_scl_pin GPIO_PIN_6; uint32_t i2cx_scl_af GPIO_AF_4;uint32_t i2cx_sda_port_rcu RCU_GPIOB; uint32_t i2cx_sda_po…

WinUI3開發_過渡動畫

簡介 過渡動畫是當發生事件時控件UI狀態發生改變時以一種動畫形式來演變到另外一種狀態&#xff0c;而非瞬間改變&#xff0c;使用一種更加平滑的方式來進行切換&#xff0c;例如下圖是文字切換的交叉柵欄效果&#xff1a;還有頁面切換動畫&#xff1a;在或者是圖標動畫&#x…

Linux下提權root權限

現在AI工具這么豐富&#xff0c;稍微搜一下就有一個差不多的總結輸出。但是&#xff0c;可能還不夠詳細&#xff0c;或者給得太多~~~今天時間關系&#xff0c;今天只總結了在Linux如何提權到root&#xff0c;并沒有寫如何進行防護。后面有時間&#xff0c;我再總結一下。命令實…

焊接機器人節能先鋒

汽車制造業中&#xff0c;機器人技術的應用已成為推動工業自動化和生產效率提升的重要力量。機器人在焊接、組裝、涂裝等關鍵制造環節中扮演著不可或缺的角色。隨著工業生產規模的不斷擴大&#xff0c;能源消耗和成本控制成為了企業必須面對的重大挑戰。尤其是工業焊接用氣的大…