[問題] 關於 BBCode 的游標移動問題

phpBB Installation & Usage Support
phpBB 2 安裝於各類型作業平台之問題討論;外掛問題,請到相關版面依發問格式發表!
(發表文章請按照公告格式發表,違者砍文)

版主: 版主管理群

版面規則
本區是討論關於 phpBB 2.0.X 架設安裝上的問題,只要有安裝任何外掛,請到外掛討論相關版面按照公告格式發表。
(發表文章請按照公告格式發表,違者砍文)
主題已鎖定
頭像
brentsu
星球公民
星球公民
文章: 232
註冊時間: 2004-08-23 09:08
來自: BNW 時尚資訊網
聯繫:

[問題] 關於 BBCode 的游標移動問題

文章 brentsu »

我們可以在【發表新主題】的時候用 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 中文版
依夢兒
竹貓忠實會員
竹貓忠實會員
文章: 2013
註冊時間: 2002-11-20 00:07

文章 依夢兒 »

因為最近剛好也想要解決這一個問題,所以我把舊文給挖出來了....^^"

解決方法請見:http://www.phpbb.com/phpBB/viewtopic.php?t=247629
安裝後,現在按下 BBCode 按鈕,語法會直接貼到游標停留的位置,不會再跑到文章結尾了。 :-P


在此順便請教一下,如果我也想要將這樣的效果套用到以下二支外掛,該怎麼作?
Clone BBCode http://phpbb-tw.net/phpbb/viewtopic.php?t=21755
訊息罐頭 http://phpbb-tw.net/phpbb/viewtopic.php?t=20070
有任何關於 phpBB 或是架站的問題,請在論壇上公開發表出來,大家一起討論。
請不要丟私人訊息問我,因為私訊是用來聊私事的。
這樣作對於解決您的問題一點幫助也沒有,也很沒有效率,小弟我一概謝絕。



搜尋是一種美德,在發問之前,請多加利用頂端的文章搜尋功能,搜尋可能的關鍵字。
確定您想問的問題找不到答案後,再發問。
Kill
竹貓忠實會員
竹貓忠實會員
文章: 874
註冊時間: 2003-07-31 12:40
來自: CKD Studio
聯繫:

文章 Kill »

依夢兒 寫:因為最近剛好也想要解決這一個問題,所以我把舊文給挖出來了....^^"

解決方法請見:http://www.phpbb.com/phpBB/viewtopic.php?t=247629
安裝後,現在按下 BBCode 按鈕,語法會直接貼到游標停留的位置,不會再跑到文章結尾了。 :-P
剛裝來試試看
結果在2.0.17的環境下居然沒有效果 :-o
後來找到了1.0.1版的
還是不行(汗
喜歡...就是淡淡ㄉ愛... ...則是深深ㄉ喜歡...
圖檔
提供phpBB代架服務以及外掛安裝

有付費服務的問題請移駕至CKD Studio發問 ╮( ̄▽ ̄)╭
依夢兒
竹貓忠實會員
竹貓忠實會員
文章: 2013
註冊時間: 2002-11-20 00:07

文章 依夢兒 »

k122417901 寫:剛裝來試試看
結果在2.0.17的環境下居然沒有效果 :-o
後來找到了1.0.1版的
還是不行(汗
怪了,我的 phpBB 版本也是 2.0.17 呀?
安裝後使用一切正常.... :roll:
有任何關於 phpBB 或是架站的問題,請在論壇上公開發表出來,大家一起討論。
請不要丟私人訊息問我,因為私訊是用來聊私事的。
這樣作對於解決您的問題一點幫助也沒有,也很沒有效率,小弟我一概謝絕。



搜尋是一種美德,在發問之前,請多加利用頂端的文章搜尋功能,搜尋可能的關鍵字。
確定您想問的問題找不到答案後,再發問。
Kill
竹貓忠實會員
竹貓忠實會員
文章: 874
註冊時間: 2003-07-31 12:40
來自: CKD Studio
聯繫:

文章 Kill »

這就奇怪了...
還是因為我有裝Multi_bbcode的緣故?
喜歡...就是淡淡ㄉ愛... ...則是深深ㄉ喜歡...
圖檔
提供phpBB代架服務以及外掛安裝

有付費服務的問題請移駕至CKD Studio發問 ╮( ̄▽ ̄)╭
依夢兒
竹貓忠實會員
竹貓忠實會員
文章: 2013
註冊時間: 2002-11-20 00:07

文章 依夢兒 »

k122417901 寫:這就奇怪了...
還是因為我有裝Multi_bbcode的緣故?
Multi BBcode 我也有裝耶~ :roll:
有任何關於 phpBB 或是架站的問題,請在論壇上公開發表出來,大家一起討論。
請不要丟私人訊息問我,因為私訊是用來聊私事的。
這樣作對於解決您的問題一點幫助也沒有,也很沒有效率,小弟我一概謝絕。



搜尋是一種美德,在發問之前,請多加利用頂端的文章搜尋功能,搜尋可能的關鍵字。
確定您想問的問題找不到答案後,再發問。
~倉木麻衣~
竹貓忠實會員
竹貓忠實會員
文章: 1405
註冊時間: 2004-03-21 21:00

文章 ~倉木麻衣~ »

依夢兒 寫:在此順便請教一下,如果我也想要將這樣的效果套用到以下二支外掛,該怎麼作?
Clone BBCode http://phpbb-tw.net/phpbb/viewtopic.php?t=21755
訊息罐頭 http://phpbb-tw.net/phpbb/viewtopic.php?t=20070
前提:已按解法方法的內容作修正
  1. 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
  2. 訊息罐頭\r

    代碼: 選擇全部

    #
    #--------[ 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
    其實就是將 txtarea.value += bbopen + bbclose; 改成 bbplace(bbopen + bbclose);罷了
    不過這樣子一改的話, 連同原本的字型顏色及大小bbcode語法會直接貼到游標停留的位置, 不會再跑到文章結尾了
momoC
星球公民
星球公民
文章: 167
註冊時間: 2004-09-15 22:39
聯繫:

文章 momoC »

我也是 2.0.17,也工作的很好耶~謝謝提供解答! :-D
依夢兒
竹貓忠實會員
竹貓忠實會員
文章: 2013
註冊時間: 2002-11-20 00:07

文章 依夢兒 »

感謝~倉木麻衣~的指導,一切 OK ! :-P
有任何關於 phpBB 或是架站的問題,請在論壇上公開發表出來,大家一起討論。
請不要丟私人訊息問我,因為私訊是用來聊私事的。
這樣作對於解決您的問題一點幫助也沒有,也很沒有效率,小弟我一概謝絕。



搜尋是一種美德,在發問之前,請多加利用頂端的文章搜尋功能,搜尋可能的關鍵字。
確定您想問的問題找不到答案後,再發問。
頭像
brentsu
星球公民
星球公民
文章: 232
註冊時間: 2004-08-23 09:08
來自: BNW 時尚資訊網
聯繫:

文章 brentsu »

嗚~~~~ 我該喜極而泣嗎???
貼了這麼久.... 想不到終於有重見天日的時候...... 嗚~~~
有空我也來裝看看.....

謝謝囉~~
※架設伺服器主機: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/
頭像
風之劍客
星球公民
星球公民
文章: 136
註冊時間: 2005-08-06 23:00
來自: 地球
聯繫:

文章 風之劍客 »

沒事逛竹貓,看到此篇!
正好解決了這個問題~^^

原來大大們都逛外國網站阿~
這對學測英文40幾分的我來講太殘酷了拉~(哭泣中.... :cry:
??????????????????????????
頭像
brentsu
星球公民
星球公民
文章: 232
註冊時間: 2004-08-23 09:08
來自: BNW 時尚資訊網
聯繫:

文章 brentsu »

因為全新安裝了 phpBB 2.0.18,所以又把以前裝過的 MOD 再通通重裝一次.... 嗚~~~

我發現這個【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();
	}
}
在原廠討論區有人針對 Mozilla 修改程式,就像這樣:

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(); 
    } 
}
但是很不幸的..... 這個程式真的是【it works in Mozilla too】,也就是 IE 跟 Mozilla 都能用,但 Safari 還是一點用也沒有..... 嗚~~~
也有人說【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 
同樣的也有人說 Safari 2.0 還是不能用.... 哎~~
我猜想根本的問題是出在 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/
頭像
brentsu
星球公民
星球公民
文章: 232
註冊時間: 2004-08-23 09:08
來自: BNW 時尚資訊網
聯繫:

文章 brentsu »

這篇很久以前的文章,再挖出來討論一下....

Accurate BBCode Insertion Mod 的 1.0 版發表一段時間了,裝上之後使用 BBcode 按鈕,會自動移動游標位置。Safari 新版也解決了這個問題,所以我上面問的問題,只要升級 Safari 就解決了,只是直到最近才解決的... :evil:

雖然按【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/
~倉木麻衣~
竹貓忠實會員
竹貓忠實會員
文章: 1405
註冊時間: 2004-03-21 21:00

文章 ~倉木麻衣~ »

因為它只有針對字型以外的做修正
要連字型顏色大小也修正的話, 請將底下程式碼\r

代碼: 選擇全部

txtarea.value += bbopen + bbclose;
改成

代碼: 選擇全部

bbplace(bbopen + bbclose);
共計二個地方(皆位於bbfontstyle()裡)
謝絕所有私人訊息詢問外掛相關問題
有問題請直接於版上發表, 集思廣議絕對比專挑特定人士詢問來的好

竹貓禁止發表含破解相關的軟體, 違者砍文
不要跟我講別的地方都可以發, 為什麼竹貓就不行
免費不等於破解, 傻傻的搞不清楚
頭像
brentsu
星球公民
星球公民
文章: 232
註冊時間: 2004-08-23 09:08
來自: BNW 時尚資訊網
聯繫:

文章 brentsu »

哈哈.... 改好囉~~感謝倉木麻衣!! :-D

修改的檔案同樣是風格中的 posting_body.tpl 檔。
原來跟上面一樣,要把那個字串累加程式改成呼叫新的 bbplace 啊...

再次感謝! :-D
※架設伺服器主機: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/
主題已鎖定

回到「phpBB 2 安裝與使用」