В HTML странице все норм.... разворачивает сворачивает текст....
<div id="content">
<div class="view-source">
<a class="nocookies" href="#">Развернуть текст</a>
<div class="hide nocookies">
<p class="mytext">
Установленный Вами редирект в конечном итоге приведет к смене главного зеркала. Однако, при его использовании следует понимать, что робот не будет индексировать страницы текущего главного зеркала, а будет переходить по редиректу. В свою очередь, цель редиректа также не будет индексироваться, поскольку является неглавным зеркалом, которое в поиске не участвует. Поэтому, если Вы хотите, чтобы до переклейки зеркал Ваш сайт мог индексироваться по адресу текущего главного зеркала, редирект лучше не устанавливать. Для смены главного зеркала лучше использовать только директиву Host в файлах robots.txt всех зеркал. Этого будет вполне достаточно, при этом Вы избежите проблем с индексированием сайта из-за перенаправления на неглавное зеркало.
Обратите внимание, процесс переклейки зеркал любым из указанных способов происходит автоматически и может занимать до 4-6 недель, ускорить его, к сожалению, нельзя.
</p>
</div>
</div>
</div>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.js" type="text/javascript"></script>
<script src="http://www.sooource.net/sites/default/files/jquery.cookie.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
if ($.cookie("blockhide")=="Свернуто") {
$('.hide.cookies').hide();
$('a.cookies').html('Развернуть текст');
} else {
$('.hide.cookies').show();
$('a.cookies').html('Свернуть текст');
}
$('.view-source a.cookies').toggle(
function(){
$.cookie("blockhide", "Развернуто");
$(this).siblings('.hide.cookies').stop(false, true).slideDown(500);
$(this).html('Свернуть текст');
},
function(){
$.cookie("blockhide", "Свернуто");
$(this).siblings('.hide.cookies').stop(false, true).slideUp(500);
$(this).html('Развернуть текст');
}
);
$('.hide.nocookies').hide();
$('.view-source a.nocookies').toggle(
function(){
$(this).siblings('.hide.nocookies').stop(false, true).slideDown(500);
$(this).html('Свернуть текст');
},
function(){
$(this).siblings('.hide.nocookies').stop(false, true).slideUp(500);
$(this).html('Развернуть текст');
}
);
});
</script>
</div>
Комментарии
Формат Full HTML?
в шаблоне ноды
Что не выходит? - код не появляется или код не выполняется?
Если не выполняется код - тогда
$(document).ready(function(){}) замените на $(function(){});
Опять кто-то решил добавить js прямо в шаблон. Ну есть же для этого модули, есть info файл темы.
почитайте про js api друпала. Нельзя там использовать это сокращение $, пишите jQuery вместо него.
По-хорошему вызывать загрузку jQuery второй раз тоже не правильно. Все нужно делать с помощью модуля jquery_update (в инете полно инфы как его пропатчить для обновление до нужной версии jQuery)
НО! для того чтобы заработало можно эксперементировать и шаблоне
да я для теста. сунул. скрипты конечно перенесу... куда надо.
да не выполняется...
не выходит все равно.
даже $ на jQuery
<?php<script type="text/javascript">
jQuery(document).ready(function(){}){
if (jQuery.cookie("blockhide")=="Свернуто") {
jQuery('.hide.cookies').hide();
jQuery('a.cookies').html('Развернуть текст');
} else {
jQuery('.hide.cookies').show();
jQuery('a.cookies').html('Свернуть текст');
}
jQuery('.view-source a.cookies').toggle(
function(){
jQuery.cookie("blockhide", "Развернуто");
jQuery(this).siblings('.hide.cookies').stop(false, true).slideDown(500);
jQuery(this).html('Свернуть текст');
},
function(){
jQuery.cookie("blockhide", "Свернуто");
jQuery(this).siblings('.hide.cookies').stop(false, true).slideUp(500);
jQuery(this).html('Развернуть текст');
}
);
jQuery('.hide.nocookies').hide();
jQuery('.view-source a.nocookies').toggle(
function(){
jQuery(this).siblings('.hide.nocookies').stop(false, true).slideDown(500);
jQuery(this).html('Свернуть текст');
},
function(){
jQuery(this).siblings('.hide.nocookies').stop(false, true).slideUp(500);
jQuery(this).html('Развернуть текст');
}
);
});
</script> ?>
Неправильно!
jQuery(document).ready(function(){}){
замените на jQuery(function(){
Создайте отдельный файл, в нем напишите
Drupal.behaviors.my_behavior = {
attach: function(context) {
// ваш код, выполнится так, как будто вы написали $(document).ready(function(){});
}
}
})(jQuery);
файл киньте в папку с темой, в info файл добавьте
scritps[] = path/to/script
Путь относительно папки темы.
И будет вам счастье.
создал файл blockhide.js закинул в папку js темы
<?php(function($){
Drupal.behaviors.my_behavior = {
attach: function(context) {
if ($.cookie("blockhide")=="Свернуто") {
$('.hide.cookies').hide();
$('a.cookies').html('Развернуть текст');
} else {
$('.hide.cookies').show();
$('a.cookies').html('Свернуть текст');
}
$('.view-source a.cookies').toggle(
function(){
$.cookie("blockhide", "Развернуто");
$(this).siblings('.hide.cookies').stop(false, true).slideDown(500);
$(this).html('Свернуть текст');
},
function(){
$.cookie("blockhide", "Свернуто");
$(this).siblings('.hide.cookies').stop(false, true).slideUp(500);
$(this).html('Развернуть текст');
}
);
$('.hide.nocookies').hide();
$('.view-source a.nocookies').toggle(
function(){
$(this).siblings('.hide.nocookies').stop(false, true).slideDown(500);
$(this).html('Свернуть текст');
},
function(){
$(this).siblings('.hide.nocookies').stop(false, true).slideUp(500);
$(this).html('Развернуть текст');
}
);
}
}
})(jQuery);?>
гранд мерси!!!
А подскажите как, переделать код, что бы не скрывался текст (контейнер в котором текст), а в место него другой текст появлялся?
$('.container').replaceWith('
');
Тут хорошие доки по jQuarey
этот код я крутил, но пока не поборол. может применительно к
<div id="content">
<div class="view-source">
<a class="nocookies" href="#">Развернуть текст</a>
<div class="hide nocookies">
<p class="mytext">
MY TEXT OLD
</p>
</div>
<div class="hide_2 nocookies">
<p class="mytext">
MY TEXT NEW
</p>
</div>
</div>
</div>
</div>
добавил в первоначальный код это (на что заменять)
<p class="mytext">
MY TEXT NEW
</p>
</div>
пока копался в этом коде и получилось так что удалил больше половины кода и на работоспособность это не повлияло.
Drupal.behaviors.my_behavior = {
attach: function(context) {
$('.hide.nocookies').hide();
$('.view-source a.nocookies').toggle(
function(){
$(this).siblings('.hide.nocookies').stop(false, true).slideDown(500);
$(this).html('Свернуть текст');
},
function(){
$(this).siblings('.hide.nocookies').stop(false, true).slideUp(500);
$(this).html('Развернуть текст');
}
);
}
}
})(jQuery);
подскажите как текст_1 на странице заменить на др текст_2 и обратно. нажимая на кнопочки показать текст_1, показать текст_2, и так по кругу