Форум русской поддержки Joomla!® CMS
08.12.2016, 18:27:53 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Как лучше объединить разные?

 (Прочитано 364 раз)
0 Пользователей и 1 Гость смотрят эту тему.
leo78
Живу я здесь
******

Репутация: +59/-8
Offline Offline

Пол: Мужской
Сообщений: 896


I left from paradise!?...


« : 23.07.2015, 12:18:07 »

Есть вот такой кода, хотелось бы их объединить, нужна помощь
Показать текстовый блок

Если так работало, то так и сделал, но без
Показать текстовый блок
не живет, вот и хотел бы спросить, так что надеюсь подскажете, как сделать это
Показать текстовый блок
Записан
leo78
Живу я здесь
******

Репутация: +59/-8
Offline Offline

Пол: Мужской
Сообщений: 896


I left from paradise!?...


« Ответ #1 : 23.07.2015, 14:15:23 »

получилось пока так соединить
Код:
jQuery.noConflict();
function show_wm()
{
jQuery('#rupay').hide();
jQuery('#robox').hide();
jQuery('#wm').slideDown(500);
return false;
};
function show_rupay()
{
jQuery('#wm').hide();
jQuery('#robox').hide();
jQuery('#rupay').slideDown(500);
return false;
};
function show_robox()
{
jQuery('#wm').hide();
jQuery('#rupay').hide();
jQuery('#robox').slideDown(500);
return false;
};

function hide_all()
{
jQuery('#wm').hide();
jQuery('#rupay').hide();
jQuery('#robox').hide();
return false;
}
    jQuery(document).ready(function() {
    jQuery('#amoney').on('click', '.south', function(){
    jQuery('#amoney .south').removeClass('active');
    jQuery(this).addClass('active');
 });
  });
Записан
zomby6888
Живу я здесь
******

Репутация: +168/-3
Offline Offline

Пол: Мужской
Сообщений: 1538


« Ответ #2 : 23.07.2015, 16:33:04 »

зачем там jQuery.noConflict(); ?
Записан
leo78
Живу я здесь
******

Репутация: +59/-8
Offline Offline

Пол: Мужской
Сообщений: 896


I left from paradise!?...


« Ответ #3 : 23.07.2015, 21:21:52 »

зачем там jQuery.noConflict(); ?
Предупреждение конфликтов

я вот не могу добавить
Код:
.removeAttr('title');

Есть код когда добавляет class но надо, чтобы еще удалял title.

Код:
jQuery(document).ready(function($) {
    $('#amoney').on('click', '.south', function(){
     $('#amoney .south').removeClass('active').removeAttr('original-title');
     $(this).addClass('active');
 });
  });

В таком варианте убирает но не возвращает обратно
« Последнее редактирование: 23.07.2015, 21:31:06 от leo78 » Записан
zomby6888
Живу я здесь
******

Репутация: +168/-3
Offline Offline

Пол: Мужской
Сообщений: 1538


« Ответ #4 : 23.07.2015, 21:34:51 »

Код
$ = 'something';
(function($) {
   alert($ === jQuery) //true
})(jQuery);
alert($ === jQuery)     //false
alert($)                //something
 

Корявая документация чтоли? А у вас вообще не используется знак $. Зато noconflict понатыкано везде.
« Последнее редактирование: 23.07.2015, 21:42:18 от zomby6888 » Записан
zomby6888
Живу я здесь
******

Репутация: +168/-3
Offline Offline

Пол: Мужской
Сообщений: 1538


« Ответ #5 : 23.07.2015, 22:05:05 »

В таком варианте убирает но не возвращает обратно

Вообще непонятно что вы хотите сделать и почему не используете $(this) в обоих случаях потому что $(this) и $('#amoney .south') у вас один и тот же объект по сути внутри вашего обработчика клика.
Записан
leo78
Живу я здесь
******

Репутация: +59/-8
Offline Offline

Пол: Мужской
Сообщений: 896


I left from paradise!?...


« Ответ #6 : 23.07.2015, 23:59:46 »

я использую то что не конфликтует и работает
Код:
$ = 'something';
(function($) {
    alert($ === jQuery) //true
})(jQuery);
alert($ === jQuery)     //false
alert($)                //something
 
- не понимаю к чему это

Так же как
Код:
jQuery.noConflict();

Чем это все мешает объединить

От того что я поставлю это
Код:
$(this)

скрипт по другому будет работать?

для таких случаев я в скрипте сделал переключатель на "$"

Показать текстовый блок
« Последнее редактирование: 24.07.2015, 00:11:27 от leo78 » Записан
leo78
Живу я здесь
******

Репутация: +59/-8
Offline Offline

Пол: Мужской
Сообщений: 896


I left from paradise!?...


« Ответ #7 : 24.07.2015, 00:12:46 »

Я хочу улучшить, но для переделки, хотелось бы понимать

У меня три кнопки и одна ссылка с отключением, я сделал, чтобы пропадала кнопка при нажатии(это .removeClass('active')), но мне надо убрать title (.removeAttr('title')Wink.
Ну и за одно усовершенствовать код

Код:
<!-- Panel -->
<div id="amoney" class="amoney-module" style="text-align: center;">
<div id="amoney1" class="amoney-mod1" style="text-align: center;">
<span class="panel1"><a class="south" href="javascript:void(0);" style="text-decoration: none;" onclick="hide_all()" title="Скрыть все">Благодарность Автору</a></span>
</div>
<div id="amoney2" class="amoney-payment" style="text-align: center;">
<a id="ammh1" class="south" href="javascript:void(0);" title="WebMoney" onclick="show_wm()"></a>
<a id="ammh2" class="south" href="javascript:void(0);" title="RBKMoney" onclick="show_rupay()"></a>
<a id="ammh8" class="south" href="javascript:void(0);" title="ROBOKASSA" onclick="show_robox()"></a>
</div>
</div>

« Последнее редактирование: 24.07.2015, 00:18:03 от leo78 » Записан
zomby6888
Живу я здесь
******

Репутация: +168/-3
Offline Offline

Пол: Мужской
Сообщений: 1538


« Ответ #8 : 24.07.2015, 00:22:31 »

Как же вы его усовершенствуете если до конца не понимаете сами что вы делаете и зачем вы делаете? Такому на форумах не учат. jQuery.fn.removeAttr('title') метод должен удалить title. Вероятно вызываете вы его не на том объекте

У вас там 3 объекта с классом "south" .В цикле необходимо пройти по каждому объекту и удалить атрибут я так понимаю вам. Хотя jQuery сама все сделает если это коллекция объектов.
« Последнее редактирование: 24.07.2015, 00:37:48 от zomby6888 » Записан
leo78
Живу я здесь
******

Репутация: +59/-8
Offline Offline

Пол: Мужской
Сообщений: 896


I left from paradise!?...


« Ответ #9 : 24.07.2015, 00:37:29 »

Прикалываетесь "Приступая к работе"  Angry
Показать текстовый блок

 drink
Записан
zomby6888
Живу я здесь
******

Репутация: +168/-3
Offline Offline

Пол: Мужской
Сообщений: 1538


« Ответ #10 : 24.07.2015, 00:40:59 »

я вам не предлагаю писать плагин jQuery (хотя это не так уж и сложно). я говорю о стандартном методе removeAttr() который уже принадлжеит объекту jQuery.fn  
Записан
leo78
Живу я здесь
******

Репутация: +59/-8
Offline Offline

Пол: Мужской
Сообщений: 896


I left from paradise!?...


« Ответ #11 : 24.07.2015, 00:48:13 »

Стандартный я проделывал
Удаление атрибута
стал бы писать если бы все получилось, проблема в том, что привязать его не смог к "click"


Код:
jQuery.noConflict();
(function($) {
    $(document).ready(function() {
    $('#amoney').on('click', '.south', function(){
     $('#amoney .south').removeClass('active');
     $(this).addClass('active');
 });
});
})(jQuery);
Код:
jQuery(document).ready(function($) {
    $('#amoney').on('click', '.south', function(){
     $('#amoney .south').removeClass('active');
     $(this).addClass('active');
 });
  });
Результат есть хождения к "south" добавляется "active"

Осталось только сделать
Код:
$(".newsBlock").removeAttr("title")
« Последнее редактирование: 24.07.2015, 00:54:02 от leo78 » Записан
zomby6888
Живу я здесь
******

Репутация: +168/-3
Offline Offline

Пол: Мужской
Сообщений: 1538


« Ответ #12 : 24.07.2015, 01:02:41 »

непонимаю что у вас там за HTML и что вы хотите сделать. Потренируйтесь на  jsfiddle
Записан
Fedor Vlasenko
Профи
********

Репутация: +696/-5
Offline Offline

Пол: Мужской
Сообщений: 3820


Все начинается с Value


« Ответ #13 : 24.07.2015, 01:29:19 »

Код:
jQuery(document).ready(function($) {
    $('#amoney').on('click', '.south', function(){
     $('#amoney .south').removeClass('active').removeAttr('original-title');
     $(this).addClass('active');
 });
  });
Как то так должно работать
Код
(function(f){    
   f('#amoney').on('click', '.south', function () {
       f(this).addClass('active').removeAttr('original-title').siblings().removeClass('active');
   });
}(jQuery));
 
и можно так писать
Код
$('#wm, #rupay, #robox').hide();
« Последнее редактирование: 24.07.2015, 02:05:14 от Fedor Vlasenko » Записан
leo78
Живу я здесь
******

Репутация: +59/-8
Offline Offline

Пол: Мужской
Сообщений: 896


I left from paradise!?...


« Ответ #14 : 24.07.2015, 01:52:20 »

Fedor Vlasenko
Спасибо, давно уже не общались !
Что-то типа такого:
Код:
(function($) {
this.show_wm = function()
{
                        $('#rupay, #robox').hide();
$('#wm').slideDown(500);
    return false;
};
this.show_rupay = function()
{
$('#wm, #robox').hide();
$('#rupay').slideDown(500);
    return false;
};
this.show_robox = function()
{
$('#wm, #rupay').hide();
$('#robox').slideDown(500);
    return false;
};

this.hide_all = function()
{
$('#wm, #rupay, #robox').hide();
return false;
}   
})(jQuery);

Живет только
Код:
jQuery.noConflict();
(function($) {
    $(document).ready(function() {
  $('#amoney').on('click', '.south', function () {
        $(this).addClass('active').removeAttr('title').siblings().removeClass('active');
    });
});
})(jQuery);

Но к сожалению только удаляет title, но не возвращает  title обратно

 drink

zomby6888
Спасибо все работает

демо
 drink
« Последнее редактирование: 24.07.2015, 23:00:59 от leo78 » Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet