久久久久av_欧美日韩一区二区在线_国产精品三区四区_日韩中字在线

12下一頁
返回列表 發帖
查看: 4431|回復: 16

Discuz!X觸屏版所有頁面增加懸浮按鈕【AI寫代碼】

76

主題

489

回帖

741

積分

應用開發者

貢獻
16 點
金幣
36 個
QQ
樓主
發表于 2024-5-11 22:36:23 | 只看樓主 |只看大圖 |倒序瀏覽 |閱讀模式


起因是有個客戶買了uniapp生成微信小程序的插件

他用的觸屏模板的頂部導航不是fixed在頂部,而是會隨著頁面上滑而上滑(官方默認的也是這樣)
在瀏覽器里系統會提供返回按鈕,但是小程序系統是沒有的。
雖然這個不是我服務范圍內的事情,但是他態度很好,所以就順手幫忙做了,發出來也給有需要的人分享下。

這次直接使用ai寫代碼

提問:

我需要在 Discuz!X 論壇的觸屏版(模板目錄為 template/zaoer_qwap/touch/)的所有頁面右下角添加三個懸浮按鈕。
這三個按鈕分別是: 返回上一頁   返回論壇首頁   返回當前頁面頂部(只在頁面滾動超過一屏幕高度時顯示)

使用字體圖標顯示,需要引入字體庫。
按鈕樣式盡量簡潔,并添加一些基本的懸浮動畫效果。

AI回答:


好的,根據你的需求,我們需要修改的文件是 `template/zaoer_qwap/touch/common/header.htm`。以下是完整的修改代碼:

1. 在文件中找到 `header` 并在下一行添加以下代碼,引入 Font Awesome 字體庫:


  1. <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css" integrity="sha512-iBBXm8fW90+nuLcSKlbmrPcLa0OT92xO1BIsZ+ywDWZCvqsWgccV3gFoRBv0z+8dLJgyAHIhR35VZc2oM/gI1w==" crossorigin="anonymous" referrerpolicy="no-referrer" />
復制代碼


2. 在文件末尾,添加以下 HTML 代碼:


  1. <div class="float-buttons">
  2.     <a href="javascript:history.back();" class="float-btn back-btn" title="返回上一頁"><i class="fas fa-arrow-left"></i></a>
  3.     <a href="$_G['siteurl']" class="float-btn home-btn" title="返回首頁"><i class="fas fa-home"></i></a>
  4.     <a href="#" class="float-btn top-btn" title="返回頂部" style="display:none;"><i class="fas fa-arrow-up"></i></a>
  5. </div>
復制代碼



3. 在上面 HTML 代碼之前,添加以下 CSS 樣式代碼:

  1. <style>
  2. .float-buttons { position: fixed; bottom: 20px; right: 20px; z-index: 999; }
  3. .float-btn { display: block; width: 40px; height: 40px; line-height: 40px; text-align: center; border-radius: 50%; background: rgba(0,0,0,0.5); color: #fff; margin-bottom: 10px; box-shadow: 0 2px 5px rgba(0,0,0,0.16), 0 2px 10px rgba(0,0,0,0.12); transition: all 0.3s ease; }
  4. .float-btn:hover { background: rgba(0,0,0,0.8); transform: translateY(-3px); box-shadow: 0 5px 11px 0 rgba(0,0,0,0.18), 0 4px 15px 0 rgba(0,0,0,0.15); }
  5. </style>
復制代碼


4. 在上面 CSS 代碼之后,添加以下 jQuery 代碼:

  1. <script>
  2. $(window).scroll(function() {
  3.     if ($(window).scrollTop() >= $(window).height()) {
  4.         $(".top-btn").show();
  5.     } else {
  6.         $(".top-btn").hide();
  7.     }
  8. });
  9. </script>
復制代碼


以上代碼實現了以下功能:

- 引入 Font Awesome 字體庫
- 在頁面右下角添加三個按鈕,分別是返回上一頁、返回論壇首頁、返回當前頁面頂部
- 使用 Font Awesome 圖標顯示按鈕
- 為按鈕添加了簡潔的樣式,包括位置、大小、顏色、陰影等
- 為按鈕添加了懸浮動畫效果,鼠標懸停時按鈕會上浮并改變陰影
- 通過 jQuery 監聽頁面滾動事件,當滾動距離超過一屏高度時顯示"返回頂部"按鈕,否則隱藏

注意,如果你的論壇沒有加載 jQuery 庫,上面的 jQuery 代碼可能無法正常工作,你需要先引入 jQuery 庫。

這樣就完成了你的需求,如有任何其他問題,歡迎繼續提出。

繼續提問:

發現3個體驗不好的地方:
1. 即使是首次訪問,也會顯示返回上一頁
2.首頁會顯示首頁按鈕
3.返回頂部的按鈕顯示的太晚,下滑了很久才顯示

AI回復:
好的,根據你提出的3個不太好的體驗,我們可以做如下優化:

1. 判斷是否是首次訪問,如果是則不顯示"返回上一頁"按鈕

2. 判斷當前頁面是否是論壇首頁,如果是則不顯示"返回首頁"按鈕

3. 提前顯示"返回頂部"按鈕,比如滾動超過300像素時就顯示

修改后的代碼:
游客,如果您要查看本帖隱藏內容請回復


注意以下幾點:

1. 對"返回上一頁"按鈕添加了判斷,如果是首次訪問(`!isset($_SERVER['HTTP_REFERER'])`)則隱藏該按鈕

2. 對"返回首頁"按鈕添加了判斷,如果當前頁面是論壇首頁(`$_G['PHP_SELF'] == $_G['siteurl']`)則隱藏該按鈕

3. 將顯示"返回頂部"按鈕的滾動距離改為300像素

通過這些優化,應該解決了你提出的3個體驗問題。如果還有任何其他需求,歡迎繼續反饋。



我覺得300還是有點長,就改為100像素了,大功告成!
這個代碼是可以運行沒有啥問題的,但是如果還想優化,可以考慮將字體文件下載到本地引入,把css和js寫到專門的css文件引入,也可以將部分代碼移到footer中。如果想更自定義一些,也可以考慮做成插件

最后附上問答圖片和最后的效果圖



回復

使用道具 舉報

28

主題

284

回帖

387

積分

爐火純青

貢獻
5 點
金幣
35 個
QQ
沙發
發表于 2024-5-11 23:05:22 | 只看Ta
雞屁踢已經這么強大了嗎,恐怖如斯!
回復

使用道具 舉報

41

主題

842

回帖

1053

積分

已臻大成

貢獻
11 點
金幣
38 個
板凳
發表于 2024-5-12 08:27:09 | 只看Ta
哈哈 小的修改直接問Ai了 給的代碼幾乎都可以用 但是效果都不太好;你這個引導提問就很好了,學會了,下次繼續深度引導提問。
回復

使用道具 舉報

1

主題

361

回帖

409

積分

爐火純青

貢獻
1 點
金幣
33 個
QQ
地板
發表于 2024-5-12 09:38:42 | 只看Ta
挺好的啊   
回復

使用道具 舉報

0

主題

16

回帖

22

積分

初學乍練

貢獻
0 點
金幣
6 個
5#
發表于 2024-5-12 09:46:22 | 只看Ta
正需要啊,沒想到AI能做到這個程度,主要自己還得會修改。
回復

使用道具 舉報

62

主題

513

回帖

658

積分

自成一派

貢獻
8 點
金幣
14 個
6#
發表于 2024-5-12 17:54:47 | 只看Ta
頂樓主啦..希望樓主多發精品好帖啦.....
回復

使用道具 舉報

62

主題

513

回帖

658

積分

自成一派

貢獻
8 點
金幣
14 個
7#
發表于 2024-5-13 10:11:09 | 只看Ta
我去,現在AI都這么智能了么
回復 0

使用道具 舉報

76

主題

489

回帖

741

積分

應用開發者

貢獻
16 點
金幣
36 個
QQ
8#
 樓主| 發表于 2024-5-14 11:18:24 來自手機 | 只看Ta
pcyi 發表于 2024-5-12 08:27
哈哈 小的修改直接問Ai了 給的代碼幾乎都可以用 但是效果都不太好;你這個引導提問就很好了,學會了,下次 ...

這個是另外一個免費的,gpt沒續費
回復

使用道具 舉報

41

主題

842

回帖

1053

積分

已臻大成

貢獻
11 點
金幣
38 個
9#
發表于 2024-5-14 14:10:09 | 只看Ta
qzuser1212 發表于 2024-5-14 11:18
這個是另外一個免費的,gpt沒續費

我當時用的百度的文心一言
回復

使用道具 舉報

76

主題

489

回帖

741

積分

應用開發者

貢獻
16 點
金幣
36 個
QQ
10#
 樓主| 發表于 2024-5-14 20:22:48 | 只看Ta
pcyi 發表于 2024-5-14 14:10
我當時用的百度的文心一言

國內的都一言難盡,這個是免費的claude
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

  • 關注公眾號
  • 有償服務微信
  • 有償服務QQ

手機版|小黑屋|Discuz! 官方交流社區 ( 皖ICP備16010102號 |皖公網安備34010302002376號 )|網站地圖|star

GMT+8, 2025-9-18 16:19 , Processed in 0.096066 second(s), 34 queries .

Powered by Discuz! W1.0 Licensed

Copyright © 2001-2025 Discuz! Team.

關燈 在本版發帖
有償服務QQ
有償服務微信
返回頂部
快速回復 返回頂部 返回列表