Najlepsza odpowiedź Yeoman, 01 kwietnia 2014 - 14:12
Ok zbadałem ten przypadek z braku zajęcia ![]()
thx.php
if(!$b) {
$post['thanks'] = "<a class=\"thanks\" id=\"a{$post['pid']}\"
onclick=\"javascript:return thx({$post['pid']});\"
href=\"showthread.php?action=thank&tid={$post['tid']}&pid={$post['pid']}\">Podziękuj</a>";
}
else if($mybb->settings['thx_del'] == "1") {
$post['thanks'] = "<a class=\"removeThanks\" id=\"a{$post['pid']}\"
onclick=\"javascript:return rthx({$post['pid']});\"
href=\"showthread.php?action=remove_thank&tid={$post['tid']}&pid={$post['pid']}\">Nie dziękuj</a>";
}
Tutaj wywaliłem na dobre <img> i ustawiłem w linku treść, którą sprawdza się po odświeżeniu przykładowo.
Kolejną linijkę wywaliłem z xml'a (<image>)
$output = "<thankyou>
<list><![CDATA[$list]]></list>
<display>".($list ? "1" : "0")."</display>
<del>{$mybb->settings['thx_del']}</del>
</thankyou>";
echo $output;
Usunąłem to bo przecież tego nie chcesz mieć, a tylko CSS.
Teraz pokaże co zrobiłem żeby tekst się zmieniał. Każdorazowo po kliknięciu leci nowe żądanie a więc przypisałem to tak:
thx.js
function thx_action(response)
{
lin=thx_common(response)
if(lin!=null)
{
lin.onclick= new Function("","return rthx("+pid+");");
lin.href='showthread.php?action=remove_thank&pid='+pid;
lin.textContent = "Nie dziękuj";
}
}
function rthx_action(response)
{
lin=thx_common(response)
if (lin!=null)
{
lin.onclick = new Function("", "return thx(" + pid + ");");
lin.href = 'showthread.php?action=thank&pid=' + pid;
lin.textContent = "Podziękuj";
}
}
Dodałem do nich lin.textContent i jeśli klikniesz w link to wywołasz funkcję która ustawi tekst odpowiedni dla akcji.
Z tego pliku poleciało także to:
img = document.getElementById('i' + pid);
img.src = xml.getElementsByTagName('image').item(0).firstChild.data;
Powinno zadziałać. U mnie błędów nie ma.
Teraz tylko dodaj klasę do <a> i będziesz mógł stylowac swój button ![]()














