Problem z BBCode

Pomoc przy instalacji oraz użytkowaniu phpBB 3.0.x. Forum nie służy do zgłaszania znalezionych błędów, innowacji lub problemów związanych ze stylami i modyfikacjami.
Linek98
Posty: 2
Rejestracja: 16 kwietnia 2009, 02:30

Problem z BBCode

Post autor: Linek98 » 16 kwietnia 2009, 02:34

Czy jest jakiś sposób na stworzenie czegoś w stylu [*] które zamienia się na właściwy kod HTML tylko i wyłącznie wtedy gdy jest zawarte w [ list][/list]? np. jeżeli wpisze samo [*] nic się nie stanie ale jeżeli wpisze [ list][*][/list] to [*] zostaje zamienione...

pit
Posty: 1580
Rejestracja: 25 lutego 2009, 18:15

Re: Problem z BBCode

Post autor: pit » 16 kwietnia 2009, 21:42

czegoś w stylu [*]
Nie bardzo rozumiem o co Ci chodzi, o taką kropkę może •
Wyjaśnij jak krowie na rowie bo pewnie ktoś by Ci odpowiedział ale woli nie ryzykować.
Jak wiadomo lepiej milczeć i uchodzić za idiotę niż się odezwać i rozwiać wszystkie wątpliwości. :D

Linek98
Posty: 2
Rejestracja: 16 kwietnia 2009, 02:30

Re: Problem z BBCode

Post autor: Linek98 » 16 kwietnia 2009, 22:44

Dokładnie o tą kropkę mi chodzi. Jak użyję [*] samotnie to nic się nie dzieje a jak użyję to pomiędzy [ list=][/list] czyli [ list=][*][/list] to [*] jest zamieniane na tą kropkę... jednym słowem forum nie zmienia [*] jeżeli nie jest ujęte pomiędzy [ list] a [/list]. Więc moje pytanie brzmi czy da się taki BBCode zmieniający się tylko jeżeli jest pomiędzy określonymi znacznikami zrobić.

np.
Przykład 1 (nie zamieni)
[BBCode][/BBCode]
Załóżmy, że w opcjach ustawiłem [BBCODE]{TEXT}[/BBCODE]. Jednak zostanie to użyte tylko i wyłącznie wtedy jeżeli będzie pomiędzy:
[ZNACZNIK][/ZNACZNIK]
Czyli jeżeli będzie:
[ZNACZNIK]
[BBCode][/BBCode]
[/ZNACZNIK]
To [BBCODE][/BBCODE] zostanie zmienione na jego zamiennik a w wypadku
[BBCODE][/BBCODE]
nie zostanie zamienione bo nie jest zawarte pomiędzy [ZNACZNIK][/ZNACZNIK]

Wyjaśniłem to najlepiej jak potrafię i to aż 2 razy xD

pit
Posty: 1580
Rejestracja: 25 lutego 2009, 18:15

Re: Problem z BBCode

Post autor: pit » 17 kwietnia 2009, 13:32

Wyjaśniłem to najlepiej jak potrafię i to aż 2 razy xD
To Cię wcale nie przybliża do rozwiązania problemu. :)
Chyba nie uda Ci się taka sztuka.
Zasugerowałeś się tym [*] a to nie jest taki zwykły znacznik to jest znacznik nadzwyczajny. :P
Znaczy się jego rola jest tylko taka by oznaczyć pozycję listy i nic więcej.
To jest chyba tutaj zdefiniowane

Kod: Zaznacz cały

function bbstyle(bbnumber)
{	
	if (bbnumber != -1)
	{
		bbfontstyle(bbtags[bbnumber], bbtags[bbnumber+1]);
	} 
	else 
	{
		insert_text('[*]');
		document.forms[form_name].elements[text_name].focus();
	}
}
chodzi o "else {insert_text('[*]');"
O ile mi wiadomo znaczniki nie mogą być zagnieżdżone ani nie można w nich stosować instrukcji warunkowych.
Na mojego czuja (wiedzę mam skromną w tym zakresie) w prosty sposób nie da się tego zrobić.

Zablokowany

Wróć do „Użytkowanie”