Неужели необработанный типограф в jQuery приходит из конфликта кода?

StackOverflow https://stackoverflow.com/questions/4625354

Вопрос

Tumblr's. страница авторизации Является ли вдохновение для многих, и как разработчик хоббист, я искал видеть, как они сделали свою форму входа в систему. Я забрал лишний код и придумал упрощенную версию, как так:

<div id="login_form_container">
    <form method="post" action="logged-in.html" id="login_form">  
        <div class="input_wrapper">
            <label for="login_email">Email address</label>
            <input type="text" name="email" id="login_email" value="">
        </div>
        <button type="submit"><span>Log In</span></button>
    </form>
</div>

Видя, как я использую jquery 1.3. На других страницах я пытался использовать следующее, чтобы получить их приятные эффекты. Это не совсем так, как у них есть, но очень упрощенная версия:

<script>
$("input#login_email").click(function () {
    $(".input_wrapper").addClass("blurred filled");
});  

$("input#login_email").blur(function () {
    $(".input_wrapper").removeClass("blurred");
});
</script>

Это работает красиво и DANDY, когда это единственный код на странице, но когда я положил его на страницу с другими битами jQuery, он возвращает ошибку:

Uncaught TypeError: Cannot call method 'click' of null
    (anonymous function)

Это то же самое, ли Chrome, Firefox или Safari, так что это явно только мой код.

Кто-нибудь знает, в чем проблема?

  • Возможно ли связаться с противоречивыми ссылками jQuery в другом месте на странице (которая все работает нормально)?
  • Это что-то более очевидное?
  • Это потому, что я не назвал функции?

Я озадачен, почему код работает в изоляции, но не в сочетании с другими элементами на странице. Это у меня тупик.

Это было полезно?

Решение

Измените свой скрипт, как это

<script src="jquery.js"></script>
<script type='text/javascript'>

jQuery.noConflict();
jQuery("input#login_email").click(function () {
    jQuery(".input_wrapper").addClass("blurred filled");
});  

jQuery("input#login_email").blur(function () {
    jQuery(".input_wrapper").removeClass("blurred");
});
</script>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top