wersja skryptu MyBB: 1.6.7
adres forum: sheepcraft.xaa.pl
na czym polega problem (screen, opis, komunikaty, nazwa stylu/theme/szablonu):
Krótko - podczas zabawy skryptami prawdopodobnie przez przypadek usunięty został skrypt odpowiadający za "zwijanie" działów. Teraz po naciśnięciu buttonu nic się nie dzieje, ale sam button z "title" i "alt" został. Nazwa stylu to "Apart 1".
Mogę liczyć na rychłą pomoc? ^^''
Wgraj go z oryginalnej paczki mybb?
Ale który to jest?
W tym właśnie rzecz. Nie mogę go znaleźć.
A dodawałeś jakieś efekty jQuery do stylu?
Tak, dodawaliśmy. Tworzę sieć z kolegą i wiem co nieco, go teraz nie ma.
Macie konflikt bibliotek na waszym forum.
Dodajcie w ACP -> Style i szablony -> Szablony -> szablony nieugrupowane -> headerinclude:
Kod:
<script>jQuery.noConflict();</script>
Tak jak napisał Cirasean dodajcie na końcu headerinclude:
Kod:
<script type="text/javascript">jQuery.noConflict();</script>
A w skryptach JS zmieńcie wszystkie
$ na
jQuery
Dodałem tą linijkę do headerinclude, lecz nie rozumiem tego:
Cytat:A w skryptach JS zmieńcie wszystkie $ na jQuery
Wytłumaczysz mi to? Moje doświadczenie z jQuery opiera się tylko na zlinkowaniu biblioteki i wklejenie gotowego skryptu, dlatego też przepraszam.
, poniżej mój headerinclude, może coś ułatwi:
Kod:
<link rel="alternate" type="application/rss+xml" title="{$lang->latest_threads} (RSS 2.0)" href="{$mybb->settings['bburl']}/syndication.php" />
<link rel="alternate" type="application/atom+xml" title="{$lang->latest_threads} (Atom 1.0)" href="{$mybb->settings['bburl']}/syndication.php?type=atom1.0" />
<meta http-equiv="Content-Type" content="text/html; charset={$charset}" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<script type="text/javascript" src="{$mybb->settings['bburl']}/jscripts/prototype.js?ver=1603"></script>
<script type="text/javascript" src="{$mybb->settings['bburl']}/jscripts/general.js?ver=1603"></script>
<script type="text/javascript" src="{$mybb->settings['bburl']}/jscripts/popup_menu.js?ver=1600"></script>
{$stylesheets}
<script type="text/javascript">
<!--
var cookieDomain = "{$mybb->settings['cookiedomain']}";
var cookiePath = "{$mybb->settings['cookiepath']}";
var cookiePrefix = "{$mybb->settings['cookieprefix']}";
var deleteevent_confirm = "{$lang->deleteevent_confirm}";
var removeattach_confirm = "{$lang->removeattach_confirm}";
var loading_text = '{$lang->ajax_loading}';
var saving_changes = '{$lang->saving_changes}';
var use_xmlhttprequest = "{$mybb->settings['use_xmlhttprequest']}";
var my_post_key = "{$mybb->post_code}";
var imagepath = "{$theme['imgdir']}";
// -->
</script>
{$newpmmsg}
<script type="text/javascript">jQuery.noConflict();</script>
To:
Kod:
<script type="text/javascript">
$(function() {
$('#navigation a').stop().animate({'marginLeft':'85px'},1000);
$('#navigation > li').hover(
function () {
$('a',$(this)).stop().animate({'marginLeft':'2px'},200);
},
function () {
$('a',$(this)).stop().animate({'marginLeft':'85px'},200);
}
);
});
</script>
Zamień na to:
Kod:
<script type="text/javascript">
jQuery(function() {
jQuery('#navigation a').stop().animate({'marginLeft':'85px'},1000);
jQuery('#navigation > li').hover(
function () {
jQuery('a',jQuery(this)).stop().animate({'marginLeft':'2px'},200);
},
function () {
jQuery('a',jQuery(this)).stop().animate({'marginLeft':'85px'},200);
}
);
});
</script>
- byłeś szybszy, ale moja metoda jest wygodniejsza : )
Nie musisz wszystkich, wystarczy pierwszą funkcję, ale co do tłumaczenia to patrząc na stronę od źródła strony:
Kod:
sheepcraft.xaa.pl/forum/
w 90 linijce masz to:
Kod:
<script type="text/javascript">
$(function() {
$('#navigation a').stop().animate({'marginLeft':'85px'},1000);
$('#navigation > li').hover(
function () {
$('a',$(this)).stop().animate({'marginLeft':'2px'},200);
},
function () {
$('a',$(this)).stop().animate({'marginLeft':'85px'},200);
}
);
});
</script>
zamień to na to:
Kod:
<script type="text/javascript">
jQuery(function($) {
$('#navigation a').stop().animate({'marginLeft':'85px'},1000);
$('#navigation > li').hover(
function () {
$('a',$(this)).stop().animate({'marginLeft':'2px'},200);
},
function () {
$('a',$(this)).stop().animate({'marginLeft':'85px'},200);
}
);
});
</script>
różnicą między obydwoma kodami jest zamiana tego:
na to:
PS
Po wykonaniu tej czynności efekt jest taki, że skrypt z nawigacją nie działa prawidłowo (nie wysuwa się), a z expanderem też kicha. Zrobiłem wszystko jak napisaliście wyżej.
Czyli MazuLuka czy mojego ?
To i to nie działa, sprawdziłem po kolei.
To spróbuj to:
Kod:
<script type="text/javascript">
jQuery(function() {
jQuery('#navigation a').stop().animate({'marginLeft':'85px'},1000);
jQuery('#navigation > li').hover(
function () {
jQuery('a',jQuery(this)).stop().animate({'marginLeft':'2px'},200);
},
function () {
jQuery('a',jQuery(this)).stop().animate({'marginLeft':'85px'},200);
}
);
});
</script>
<script type="text/javascript">jQuery.noConflict();</script>
STOP NIE NADĄŻAM W DEBUGOWANIU!
Twój problem już nie jest po stronie kolidacji, ale masz jQuery.noConflict(); przed pobraniem jQuery, wstaw to:
Kod:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
przed
Kod:
<script> jQuery.noConflict();</script>