Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 Аватар для mozg-bolit
4 / 4 / 5
Регистрация: 20.09.2014
Сообщений: 307

2 функции не могут работать вместе (вывод майлов и меню)

19.08.2016, 10:46. Показов 727. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет, вообщем решил на сайте сделать комментарии со смайлами, нашел шикарный код
HTML5
1
2
3
4
    <textarea id="txt" placeholder="Ваше сообщение здесь!"></textarea>
    <span onClick="addImage('img/dry.png');"><img class="smile" src="img/dry.png"></span>
    <span onClick="addImage('img/rolleyes.gif');"><img class="smile" src="img/rolleyes.gif"></span>
    <span onClick="addImage('img/cool.png');"><img class="smile" src="img/cool.png"></span>
CSS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    .textarea {
    background-color: #f0f0f0;
    border: 1px solid #c6c6c6;
    height: 120px;
    width: 100%;
    word-wrap: break-word;
}
textarea {
    border: 1px solid black;
    height: 100px;
    width: 150px;
}
span {
    cursor: pointer;
}
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
// Допустим, что нам известен id нужного тега textarea
        var Textarea = document.getElementById("txt");
        var Container = document.createElement("DIVDIV");
 
        // Добавим контейнер к родителю текстарии, потом перенесем ее внутрь контейнера и скроем
        Textarea.parentNode.insertBefore(Container, Textarea);
        Container.appendChild(Textarea);
        Textarea.style.display = 'none';
 
        // Создадим фрейм и добавим его в контейнер редактора
        var iframe = "<iframe id='text-frame' class='textarea' 'src="javascript: document.open(); document.domain='" + document.domain + "'; document.close();" frameborder='0'></iframe>";
 
        Container.innerHTML = iframe + Container.innerHTML;
        var Frame = Container.childNodes[0];
 
        // Хитрое определение IE ;)
        var isIE = /*@cc_on!@*/
            false;
 
        // Выделим документ фрейма в отдельную переменную
        var FrameDoc = isIE ? Frame.contentWindow.document : Frame.contentDocument;
 
        FrameDoc.open();
 
        // Если содержимое тега body будет пустым, в FF курсор станет каким-то через-чур маленьким.
        // Чтобы этого избежать, добавим & nbsp;
        FrameDoc.write('<html><head><style>body{ margin:0; padding:8px; width:394px; word-wrap:break-word; }</style></head><body>' + Textarea.value + '&nbsp;</body></html>');
        FrameDoc.close();
        FrameDoc.designMode = "on";
 
        Frame.contentWindow.focus();
 
        function addImage(src) {
            // Если в IE не установить фокус на окне редактируемого фрейма,
            // то в дальнейшем он может вставить код наверх вашей страницы, а не во фрейм ;)
            Frame.contentWindow.focus();
            var SelectionRange = isIE ? FrameDoc.selection.createRange() : Frame.contentWindow.getSelection().getRangeAt(0);
 
            var html = "<img src='" + src + "'/>";
 
            if (isIE) {
                // тут все просто
                SelectionRange.pasteHTML(html);
            } else {
                // для остальных используем вспомогательный тег
                SelectionRange.deleteContents();
                var el = document.createElement("SPAN");
                FrameDoc.getElementsByTagName("BODY")[0].appendChild(el);
 
                // Firefox не поймет, если вы сразу замените outerHTML. В версиях ниже 3-ей такое свойство вообще у него отсутствует.
                el.innerHTML = html;
                SelectionRange.insertNode(el);
                el.outerHTML = html;
            }
        }
Но на сайте используется кусок js который помогает меню складываться, и из за этого, данные смайлы не работают
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
// Slidebars 0.9.4 - [url]http://plugins.adchsm.me/slidebars/[/url] Written by Adam Smith - [url]http://www.adchsm.me/[/url] Released under MIT License - [url]http://plugins.adchsm.me/slidebars/license.txt[/url]
;(function(a){a.slidebars=function(b){
var x=a.extend({siteClose:true,disableOver:false,hideControlClasses:false},b);
var v=document.createElement("div").style,t=false,k=false;
if(v.MozTransition===""||v.WebkitTransition===""||v.OTransition===""||v.transition===""){t=true}
if(v.MozTransform===""||v.WebkitTransform===""||v.OTransform===""||v.transform===""){k=true}
var s=navigator.userAgent,y=false,c=false;
if(/Android/.test(s)){y=s.substr(s.indexOf("Android")+8,3)
}else{
if(/(iPhone|iPod|iPad)/.test(s)){
c=s.substr(s.indexOf("OS ")+3,3).replace("_",".")}}
 
 
if(y&&y<3||c&&c<5){a("html").addClass("sb-static")}
 
 
if(!a("#sb-site").length){a("body").children().wrapAll('<div id="sb-site" />')}
 
 
var q=a("#sb-site");
if(!q.parent().is("body")){q.appendTo("body")}
 
if(a(".sb-left").length){
var e=a(".sb-left"),
g=false;e.addClass("sb-slidebar");
if(!e.parent().is("body")){e.appendTo("body")}}
 
 
if(a(".sb-right").length){
var h=a(".sb-right"),j=false;h.addClass("sb-slidebar");
if(!h.parent().is("body")){h.appendTo("body")}}
var r=false,z=a(window).width(),w=a(".sb-toggle-left, .sb-toggle-right, .sb-open-left, .sb-open-right, .sb-close"),m=a(".sb-slide");
function o(){if(!x.disableOver||(typeof x.disableOver==="number"&&x.disableOver>=z)){r=true;a("html").addClass("sb-init");
if(x.hideControlClasses){w.removeClass("sb-hide")}}else{if(typeof x.disableOver==="number"&&x.disableOver<z){r=false;a("html").removeClass("sb-init");
if(x.hideControlClasses){w.addClass("sb-hide")}if(g||j){l()}}}}o();function f(){q.css("minHeight","");q.css("minHeight",a("body").height()+"px");
if(e&&(e.hasClass("sb-style-push")||e.hasClass("sb-style-overlay"))){e.css("marginLeft","-"+e.css("width"))}
if(h&&(h.hasClass("sb-style-push")||h.hasClass("sb-style-overlay"))){h.css("marginRight","-"+h.css("width"))}
if(e&&e.hasClass("sb-width-custom")){e.css("width",e.attr("data-sb-width"))}
if(h&&h.hasClass("sb-width-custom")){h.css("width",h.attr("data-sb-width"))}}f();a(window).resize(function(){
var A=a(window).width();
if(z!==A){z=A;o();f();
if(g){i("left")}
if(j){i("right")}}});
var u;if(t&&k){
u="translate";
if(y&&y<4.4){u="side"}
}else{u="jQuery"}
function d(B,E,D){
var A;
if(B.hasClass("sb-style-push")){A=q.add(B).add(m)}
else{if(B.hasClass("sb-style-overlay")){A=B
}else{A=q.add(m)}
}if(u==="translate"){A.css("transform","translate("+E+")")}
else{if(u==="side"){if(E[0]==="-"){E=E.substr(1)}A.css(D,E);
setTimeout(function(){if(E==="0px"){A.removeAttr("style");
f()}},400)}else{if(u==="jQuery"){if(E[0]==="-"){E=E.substr(1)}
var C={};C[D]=E;A.stop().animate(C,400);
setTimeout(function(){if(E==="0px"){A.removeAttr("style");f()}},400)}}}}
function i(A){if(A==="left"&&e&&j||A==="right"&&h&&g){l();setTimeout(B,400)}
else{B()}function B(){if(r&&A==="left"&&e){a("html").addClass("sb-active sb-active-left");e.addClass("sb-active");
d(e,e.css("width"),"left");
setTimeout(function(){g=true},400)}else{if(r&&A==="right"&&h){a("html").addClass("sb-active sb-active-right");
h.addClass("sb-active");d(h,"-"+h.css("width"),"right");setTimeout(function(){j=true},400)}}}}
function l(A){if(g||j){if(g){d(e,"0px","left");g=false}if(j){d(h,"0px","right");
j=false}setTimeout(function(){a("html").removeClass("sb-active sb-active-left sb-active-right");
if(e){e.removeClass("sb-active")}if(h){h.removeClass("sb-active")}if(A){window.location=A}},400)}}
function n(A){if(A==="left"&&e){if(!g){i("left")}else{l()}}if(A==="right"&&h){if(!j){i("right")}else{l()}}}this.open=i;
this.close=l;this.toggle=n;this.init=function(){return r};this.active=function(A){if(A==="left"&&e){return g}if(A==="right"&&h){return j}};
function p(B,A){B.stopPropagation();
B.preventDefault();
if(B.type==="touchend"){A.off("click")}}
a(".sb-toggle-left").on("touchend click",function(A){p(A,a(this));n("left")});a(".sb-toggle-right").on("touchend click",function(A){p(A,a(this));n("right")});
a(".sb-open-left").on("touchend click",function(A){p(A,a(this));i("left")});a(".sb-open-right").on("touchend click",function(A){p(A,a(this));i("right")});
a(".sb-close").on("touchend click",function(A){p(A,a(this));l()});a(".sb-slidebar a").not(".sb-disable-close").on("click",function(A){p(A,a(this));
l(a(this).attr("href"))});
q.on("touchend click",function(A){if(x.siteClose&&(g||j)){p(A,a(this));l()}})}})(jQuery);
Также заменил что если убрать строку
JavaScript
1
if(!a("#sb-site").length){a("body").children().wrapAll('<div id="sb-site" />')}
то смайлы начинают работать, а меню нет.


Можно ли как то исправить js который отвечает за смайлы, чтобы все заработало нормально?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
19.08.2016, 10:46
Ответы с готовыми решениями:

Могут ли эти комплектующие работать вместе?
1.http://technopoint.ru/catalog/i144405/processor-amd-fx-6300-oem 2.http://technopoint.ru/catalog/i136676/materinskaya-plata-asus-m5a97...

Могут ли работать CC2500 и nrf24l01 вместе?
Есть пульт с СС2500, смогу ли я связать его с трансивером nrf24l01?

Могут ли DDR2 и DDR3 работать вместе?
Привет всем! Есть вот такая материнская плата: https://elmir.ua/motherboards/motherboard_s-775_g41_asrock_g41c-gs_r2_0_matx.html. На...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.08.2016, 10:46
Помогаю со студенческими работами здесь

Если друзья могут пройти все уровни вместе, выведите «I become the guy.»
Помогите решить задачу: Есть такая игра под названием «I Wanna Be the Guy», в ней n уровней. Little X и его друг Little Y подсели на эту...

Текст меню должен уменьшаться вместе с меню
Текст меню должен уменьшаться вместе с меню. Ниже представлена верстка меню. Через css я сделал чтоб при уменьшении окна, уменьшелось...

Сортировка и группировка е-майлов
Народ помогите, пожалуйста!!! Всю жизнь работал с Оутлуком, он не без косяков конечно, но интерфейс юзабельней чем в Лотусе. ...

Будут ли работать вместе?
Вообщем) На моём стареньком,но хорошем пк сгорела одна из оперативок. Были у меня две оперативки по 2 гб. Называются они Kingston...

Будут ли работать вместе?
У меня проц. Потдерживает оперативку с частотой 1866. У меня есть 2 планки: 1я 4гб с 1333 2я 8гб 1600 на какой частоте будет работать 2я?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru