Jump to content

WolF™

Newbie
  • Posts

    6
  • Joined

  • Last visited

Everything posted by WolF™

  1. Извиняюсь, конечно я хотел вызвать ее в контексте другого объекта (в моем случае this) Но самое интересное - данный способ работает во всех браузерах Нашел решение - вытащил .bind из Mootools и "вкрутил" в свой проект. Может кому пригодится: Function.prototype.life = function (scope) { var fn = this; return function () { return fn.apply(scope, arguments); }; };
  2. Это смена области видимости функции.. Или в JQ она реализуется как-то иначе?) Просто в JQuery не очень силен) А тут надо было nivo-slider подключить, а он на JQ как-раз.. Ну 2 библиотеку подключать было не вариант, начал учить большую и жирную либу)
  3. Здравствуйте! Приходится делать сайт с поддержкой ослов (IE). Ошибка заключается в моем объекте, если не сложно, подскажите где.. var ParseHash = function() { $(window).hashchange(function() { this.hash = location.hash.replace(/#/, "").split("&"); if(!this.hash[0]) this.hash = []; if(this.onhc) this.onhc([this.hash, location.hash]) } .bind(this)); $(window).hashchange(); this.select = function(a) { var b = !1; jQuery.each(this.hash, function(d, c) { if(c.split("=")[0] == a) return b = c.split("=")[1], !1 }); return b }; this.set = function(set) { var add = function(arr) { if(this.hash[0] && this.select(arr[0])) { jQuery.each(this.hash, function(i, val) { if(val.split('=')[0] == arr[0]) { this.hash[i] = [arr[0], arr[1]].join('='); } } .bind(this)); } else { this.hash.push([arr[0], arr[1]].join('=')); } } .bind(this); if(arguments[1]) { add([set, arguments[1]]); } else { for(var key in set) { add([key, set[key]]); } } this.sync(); }; this.del = function(key) { if(arguments[1]) { jQuery(this.hash, function(i, val) { if(val && val.split('=')[1] == key) { delete this.hash[i]; } } .bind(this)); } else { jQuery.each(this.hash, function(i, val) { if(val && val.split('=')[0] == key) { delete this.hash[i]; } } .bind(this)); } this.sync(); }; this.sync = function() { var h = []; for(var i = 0; i < this.hash.length; i++) { if(i in this.hash) { h.push(this.hash[i]) } } this.hash = h; this.hash.sort(); location.hash = this.hash.join('&'); }; } P.S: Сайт полностью на Ajax'e. С отключенным JS переходит в обычный режим. Буду очень рад ответу) P.P.S: После этого кода IE отказывается вызывать даже alert.. P.P.P.S: Используется jQuery последней версии и JQuery.onhashchange plugin (первая ссылка в Google (дабы без рекламы))
  4. HTML: <form> <label>Ввести свою цену <input type='checkbox' id = 'setprice'></label> <input id = 'price' style = 'display: none'><br> <hr> <input id = 'print' style = 'width: 100%' value = 'Добрый день, у нас есть 1020 долларов и мы хотим участников ближе к Москве'> </form> JS: var defVal = $('#print').val(); $('#setprice').change(function() { if ($(this).attr('checked')) { $('#price').css('display', 'block'); } else { $('#price').css('display', 'none'); $('#print').val(defVal); } }); $('#price').keypress(function() { setTimeout(function() { if ($('#price').val()) { $('#print').val($('#print').val().replace(/\d+/, $('#price').val())); } else { $('#print').val(defVal) } }, 100) }); JSFiddle Поймешь задумку - сделаешь сам)
  5. HTML: <DIV id='content'> <DIV id='b1' class="myclass a01 20120720">текст</DIV> <DIV id='b2' class="myclass a02 20120720">текст1</DIV> <DIV id='b3' class="myclass a01 20120720">текст2</DIV> <DIV id='b4' class="myclass a02 20120720">текст3</DIV> </DIV> JS: function getSelected() { if (window.getSelection) { return window.getSelection(); } else if (document.getSelection) { return document.getSelection(); } else if (document.selection) { return document.selection.createRange().text; } } (function hide() { var hides = 0; function on() { if (!hides) { var s = getSelected(); if (s == 'текст' || s == 'текст2') { $('.a02').css('display', 'none'); hides = 1; } else if (s == 'текст1' || s == 'текст3') { $('.a01').css('display', 'none'); hides = 1; } } else { $('.a02, .a01').css('display', 'block'); hides = 0; } } $(document).keydown(function() { if (event.keyCode == 13) { on(); } }); })(); Это так сказать под данную задачу. Можно написать скрипт, который будет определять DIV, который выделили, и не будет зависеть от текста DIV'a, но это уже за отдельную плату Если что: ICQ 6-333-106-23 P.S: Клавиша Insert зарезервирована (т.к. на ней находится Print Screen). В моем примере используется клавиша Enter.
  6. Переписал ваш код) Работающая версия: HTML: <form name="form" method="post" id='form'> <input type="text" name="name" class="name" size="30"> <div class="errorName"></div> <input type="button" value="Click" id='click'> </form> JS: $('#click').click(function() { alert(validate($('#form input[name="name"]'))) }); function validate(inp) { if (!inp.val()) { $(".errorName").html("<b>Поле имя не заполнено</b>").css({ "color": "red" }); $(".name").toggleClass("errorList"); $(".name").click(function() { $(".name").removeClass("errorList"); $(".errorName").html(""); }); return false; } return true; } CSS: .errorList{ background-color:#999; border:2px solid red; }
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy