[問題] 關於 BBCode 的游標移動問題
版主: 版主管理群
版面規則
本區是討論關於 phpBB 2.0.X 架設安裝上的問題,只要有安裝任何外掛,請到外掛討論相關版面按照公告格式發表。
(發表文章請按照公告格式發表,違者砍文)
本區是討論關於 phpBB 2.0.X 架設安裝上的問題,只要有安裝任何外掛,請到外掛討論相關版面按照公告格式發表。
(發表文章請按照公告格式發表,違者砍文)
[問題] 關於 BBCode 的游標移動問題
我們可以在【發表新主題】的時候用 Quote, Code PHP List Img URL .... 按鈕,比如最常用的但是 Img 跟 URL,在按下按鈕後游標的插入點並不會跟著移動,舉例來說,要貼圖的話,要這麼做:
1. 按 Img 按鈕
2. 自己把插入點移到 [ IMG ] 的後面\r
3. 輸入或貼上圖片網址
4. 再按 *IMG 按鈕
5. 再把插入點移到 [ /IMG ] 的後面\r
6. 按 Enter 換行再繼續輸入文字
如果 BBcode 會自動移動插入點,就可以偷懶少按幾次......
不知道說這麼多,能否了解我的問題??
請問要如何修改程式呢?
●架設主機作業系統:Windows Server 2003
●您安裝的程式:php 5.0
●您的 phpBB2 版本:phpBB 2.0.10 + MS SQL Server 2000 中文版
1. 按 Img 按鈕
2. 自己把插入點移到 [ IMG ] 的後面\r
3. 輸入或貼上圖片網址
4. 再按 *IMG 按鈕
5. 再把插入點移到 [ /IMG ] 的後面\r
6. 按 Enter 換行再繼續輸入文字
如果 BBcode 會自動移動插入點,就可以偷懶少按幾次......
不知道說這麼多,能否了解我的問題??
請問要如何修改程式呢?
●架設主機作業系統:Windows Server 2003
●您安裝的程式:php 5.0
●您的 phpBB2 版本:phpBB 2.0.10 + MS SQL Server 2000 中文版
因為最近剛好也想要解決這一個問題,所以我把舊文給挖出來了....^^"
解決方法請見:http://www.phpbb.com/phpBB/viewtopic.php?t=247629。
安裝後,現在按下 BBCode 按鈕,語法會直接貼到游標停留的位置,不會再跑到文章結尾了。
在此順便請教一下,如果我也想要將這樣的效果套用到以下二支外掛,該怎麼作?
Clone BBCode http://phpbb-tw.net/phpbb/viewtopic.php?t=21755
訊息罐頭 http://phpbb-tw.net/phpbb/viewtopic.php?t=20070
解決方法請見:http://www.phpbb.com/phpBB/viewtopic.php?t=247629。
安裝後,現在按下 BBCode 按鈕,語法會直接貼到游標停留的位置,不會再跑到文章結尾了。
在此順便請教一下,如果我也想要將這樣的效果套用到以下二支外掛,該怎麼作?
Clone BBCode http://phpbb-tw.net/phpbb/viewtopic.php?t=21755
訊息罐頭 http://phpbb-tw.net/phpbb/viewtopic.php?t=20070
有任何關於 phpBB 或是架站的問題,請在論壇上公開發表出來,大家一起討論。
請不要丟私人訊息問我,因為私訊是用來聊私事的。
這樣作對於解決您的問題一點幫助也沒有,也很沒有效率,小弟我一概謝絕。
搜尋是一種美德,在發問之前,請多加利用頂端的文章搜尋功能,搜尋可能的關鍵字。
確定您想問的問題找不到答案後,再發問。
請不要丟私人訊息問我,因為私訊是用來聊私事的。
這樣作對於解決您的問題一點幫助也沒有,也很沒有效率,小弟我一概謝絕。
搜尋是一種美德,在發問之前,請多加利用頂端的文章搜尋功能,搜尋可能的關鍵字。
確定您想問的問題找不到答案後,再發問。
剛裝來試試看依夢兒 寫:因為最近剛好也想要解決這一個問題,所以我把舊文給挖出來了....^^"
解決方法請見:http://www.phpbb.com/phpBB/viewtopic.php?t=247629。
安裝後,現在按下 BBCode 按鈕,語法會直接貼到游標停留的位置,不會再跑到文章結尾了。
結果在2.0.17的環境下居然沒有效果
後來找到了1.0.1版的
還是不行(汗
怪了,我的 phpBB 版本也是 2.0.17 呀?k122417901 寫:剛裝來試試看
結果在2.0.17的環境下居然沒有效果![]()
後來找到了1.0.1版的
還是不行(汗
安裝後使用一切正常....
有任何關於 phpBB 或是架站的問題,請在論壇上公開發表出來,大家一起討論。
請不要丟私人訊息問我,因為私訊是用來聊私事的。
這樣作對於解決您的問題一點幫助也沒有,也很沒有效率,小弟我一概謝絕。
搜尋是一種美德,在發問之前,請多加利用頂端的文章搜尋功能,搜尋可能的關鍵字。
確定您想問的問題找不到答案後,再發問。
請不要丟私人訊息問我,因為私訊是用來聊私事的。
這樣作對於解決您的問題一點幫助也沒有,也很沒有效率,小弟我一概謝絕。
搜尋是一種美德,在發問之前,請多加利用頂端的文章搜尋功能,搜尋可能的關鍵字。
確定您想問的問題找不到答案後,再發問。
前提:已按解法方法的內容作修正依夢兒 寫:在此順便請教一下,如果我也想要將這樣的效果套用到以下二支外掛,該怎麼作?
Clone BBCode http://phpbb-tw.net/phpbb/viewtopic.php?t=21755
訊息罐頭 http://phpbb-tw.net/phpbb/viewtopic.php?t=20070
- Clone BBCode
代碼: 選擇全部
# #--------[ OPEN ]---------------- # templates/yourTemplates/posting_body.tpl # #--------[ FIND ]---------------- # function text(str){ document.post.message.value=document.post.message.value+str; } # #--------[ REPLACE WITH]---------------- # function text(str){ bbplace(str); } # #--------[ SAVE/CLOSE ALL FILES ]---------------- # # EoM - 訊息罐頭\r
其實就是將 txtarea.value += bbopen + bbclose; 改成 bbplace(bbopen + bbclose);罷了
代碼: 選擇全部
# #--------[ OPEN ]---------------- # templates/yourTemplates/posting_body.tpl # #--------[ FIND ]---------------- # if (!theSelection) { \n txtarea.value += bbopen + bbclose; # #--------[ REPLACE WITH]---------------- # if (!theSelection) { bbplace(bbopen + bbclose); # #--------[ FIND ]---------------- # else { txtarea.value += bbopen + bbclose; # #--------[ REPLACE WITH]---------------- # else { bbplace(bbopen + bbclose); # #--------[ SAVE/CLOSE ALL FILES ]---------------- # # EoM
不過這樣子一改的話, 連同原本的字型顏色及大小bbcode語法會直接貼到游標停留的位置, 不會再跑到文章結尾了
嗚~~~~ 我該喜極而泣嗎???
貼了這麼久.... 想不到終於有重見天日的時候...... 嗚~~~
有空我也來裝看看.....
謝謝囉~~
貼了這麼久.... 想不到終於有重見天日的時候...... 嗚~~~
有空我也來裝看看.....
謝謝囉~~
※架設伺服器主機:Mac mini 1.5GHz, 1GB RAM x 三部
※架設主機作業系統:Mac OS X Server 10.6.6 Snow Leopard
※我的上網方式:固定制 ADSL 16M/8M、6 IP
※安裝的伺服器:Apache + php 5 + MySQL 5
※我的 phpBB2 版本:phpBB 3.0.x UTF-8 版
※BNW會議室網址: http://www.bnw.com.tw/conference/
※架設主機作業系統:Mac OS X Server 10.6.6 Snow Leopard
※我的上網方式:固定制 ADSL 16M/8M、6 IP
※安裝的伺服器:Apache + php 5 + MySQL 5
※我的 phpBB2 版本:phpBB 3.0.x UTF-8 版
※BNW會議室網址: http://www.bnw.com.tw/conference/
因為全新安裝了 phpBB 2.0.18,所以又把以前裝過的 MOD 再通通重裝一次.... 嗚~~~
我發現這個【Accurate BBCode Insertion Mod】只對 IE 有效,對我的 Safari 則是一點用也沒有!
按下 Quote、Img、URL 按鈕,代碼還是跑到最後面,一點也不管現在的游標位置....
我猜想這可能是【function bbplace(text)】函示,傳回的游標位置有誤,導致 BBcode 在 Safari 中失效....
問題是.... 我研究了半天也不知道問題出在哪.... 都是比較與運算,好像沒有傳回游標位址的動作....
在原廠討論區有人針對 Mozilla 修改程式,就像這樣:
http://www.phpbb.com/phpBB/viewtopic.ph ... 0c866fa723
但是很不幸的..... 這個程式真的是【it works in Mozilla too】,也就是 IE 跟 Mozilla 都能用,但 Safari 還是一點用也沒有..... 嗚~~~
也有人說【Safari 1.2.4 it does not work】,事實上 2.0.2 還是不能用...
最後能找到的也只有這個版本了:
同樣的也有人說 Safari 2.0 還是不能用.... 哎~~
我猜想根本的問題是出在 phpBB 本身不支援 Safari...
因為在 Safari 上面按【表情符號】,代碼只會加到最後,而不會加在游標後面,於是 BBcode 也不行....
我發現這個【Accurate BBCode Insertion Mod】只對 IE 有效,對我的 Safari 則是一點用也沒有!
按下 Quote、Img、URL 按鈕,代碼還是跑到最後面,一點也不管現在的游標位置....
我猜想這可能是【function bbplace(text)】函示,傳回的游標位置有誤,導致 BBcode 在 Safari 中失效....
問題是.... 我研究了半天也不知道問題出在哪.... 都是比較與運算,好像沒有傳回游標位址的動作....
代碼: 選擇全部
function bbplace(text) {
var txtarea = document.post.message;
if (txtarea.createTextRange && txtarea.caretPos) {
var caretPos = txtarea.caretPos;
caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? caretPos.text + text + ' ' : caretPos.text + text;
txtarea.focus();
} else {
txtarea.value += text;
txtarea.focus();
}
}
http://www.phpbb.com/phpBB/viewtopic.ph ... 0c866fa723
代碼: 選擇全部
function bbplace(text) {
var txtarea = document.post.message;
if (txtarea.createTextRange && txtarea.caretPos) {
var caretPos = txtarea.caretPos;
caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? caretPos.text + text + ' ' : caretPos.text + text;
txtarea.focus();
} else if (txtarea.selectionStart || txtarea.selectionStart == '0') {
var startPos = txtarea.selectionStart;
var endPos = txtarea.selectionEnd;
txtarea.value = txtarea.value.substring(0, startPos)
+ text
+ txtarea.value.substring(endPos, txtarea.value.length);
txtarea.focus();
txtarea.selectionStart = startPos + text.length;
txtarea.selectionEnd = startPos + text.length;
} else {
txtarea.value += text;
txtarea.focus();
}
}
也有人說【Safari 1.2.4 it does not work】,事實上 2.0.2 還是不能用...
最後能找到的也只有這個版本了:
代碼: 選擇全部
## 2004-05-18 - Version 1.0.1
## - Improvements to make it work in all of Mozilla Firefox 1, Opera 8 and IE 6
## - not tested on OS-X Safari
我猜想根本的問題是出在 phpBB 本身不支援 Safari...
因為在 Safari 上面按【表情符號】,代碼只會加到最後,而不會加在游標後面,於是 BBcode 也不行....
※架設伺服器主機:Mac mini 1.5GHz, 1GB RAM x 三部
※架設主機作業系統:Mac OS X Server 10.6.6 Snow Leopard
※我的上網方式:固定制 ADSL 16M/8M、6 IP
※安裝的伺服器:Apache + php 5 + MySQL 5
※我的 phpBB2 版本:phpBB 3.0.x UTF-8 版
※BNW會議室網址: http://www.bnw.com.tw/conference/
※架設主機作業系統:Mac OS X Server 10.6.6 Snow Leopard
※我的上網方式:固定制 ADSL 16M/8M、6 IP
※安裝的伺服器:Apache + php 5 + MySQL 5
※我的 phpBB2 版本:phpBB 3.0.x UTF-8 版
※BNW會議室網址: http://www.bnw.com.tw/conference/
這篇很久以前的文章,再挖出來討論一下....
Accurate BBCode Insertion Mod 的 1.0 版發表一段時間了,裝上之後使用 BBcode 按鈕,會自動移動游標位置。Safari 新版也解決了這個問題,所以我上面問的問題,只要升級 Safari 就解決了,只是直到最近才解決的...
雖然按【Quote】、【Code】都會移動游標,但是【字型顏色】與【字型大小】卻不會!
請問有安裝這個外掛的【依夢兒】跟【倉木麻衣】,有沒有遇到這個問題?有解決的辦法嗎?
Accurate BBCode Insertion Mod 的 1.0 版發表一段時間了,裝上之後使用 BBcode 按鈕,會自動移動游標位置。Safari 新版也解決了這個問題,所以我上面問的問題,只要升級 Safari 就解決了,只是直到最近才解決的...
雖然按【Quote】、【Code】都會移動游標,但是【字型顏色】與【字型大小】卻不會!
請問有安裝這個外掛的【依夢兒】跟【倉木麻衣】,有沒有遇到這個問題?有解決的辦法嗎?
※架設伺服器主機:Mac mini 1.5GHz, 1GB RAM x 三部
※架設主機作業系統:Mac OS X Server 10.6.6 Snow Leopard
※我的上網方式:固定制 ADSL 16M/8M、6 IP
※安裝的伺服器:Apache + php 5 + MySQL 5
※我的 phpBB2 版本:phpBB 3.0.x UTF-8 版
※BNW會議室網址: http://www.bnw.com.tw/conference/
※架設主機作業系統:Mac OS X Server 10.6.6 Snow Leopard
※我的上網方式:固定制 ADSL 16M/8M、6 IP
※安裝的伺服器:Apache + php 5 + MySQL 5
※我的 phpBB2 版本:phpBB 3.0.x UTF-8 版
※BNW會議室網址: http://www.bnw.com.tw/conference/
哈哈.... 改好囉~~感謝倉木麻衣!!
修改的檔案同樣是風格中的 posting_body.tpl 檔。
原來跟上面一樣,要把那個字串累加程式改成呼叫新的 bbplace 啊...
再次感謝!
修改的檔案同樣是風格中的 posting_body.tpl 檔。
原來跟上面一樣,要把那個字串累加程式改成呼叫新的 bbplace 啊...
再次感謝!
※架設伺服器主機:Mac mini 1.5GHz, 1GB RAM x 三部
※架設主機作業系統:Mac OS X Server 10.6.6 Snow Leopard
※我的上網方式:固定制 ADSL 16M/8M、6 IP
※安裝的伺服器:Apache + php 5 + MySQL 5
※我的 phpBB2 版本:phpBB 3.0.x UTF-8 版
※BNW會議室網址: http://www.bnw.com.tw/conference/
※架設主機作業系統:Mac OS X Server 10.6.6 Snow Leopard
※我的上網方式:固定制 ADSL 16M/8M、6 IP
※安裝的伺服器:Apache + php 5 + MySQL 5
※我的 phpBB2 版本:phpBB 3.0.x UTF-8 版
※BNW會議室網址: http://www.bnw.com.tw/conference/


