【问题标题】:jQuery code messes up the rest of my JavaScript codejQuery 代码弄乱了我的 JavaScript 代码的其余部分
【发布时间】:2015-07-24 15:45:57
【问题描述】:

我的整个 JavaScript 运行良好,没有任何错误,但是当我尝试使用 jQuery 时,我得到了大量的各种错误:

这是我的 jQuery 代码(它使用了一个 jQuery 插件,但在我使用插件之前我已经使用了一些纯 jQuery 代码并且得到了相同的结果。这段代码在 <script> 内):

$(function() {
                $("#mailSender").validate({
                    rules: {
                      email: {
                       required: true,
                       email: true
                     }
                   }
                    messages: {
                     email : {
                       required: "This field is required.",
                       email: "Please enter a valid email address."
                      }
                    }
                  });
                });

这些是“未定义”的scrldown()bordcol()bordcolBlack() 函数:

function scrldown() {
                var navv = document.getElementById('nav_inn'),
                style = window.getComputedStyle(navv),
                top = style.getPropertyValue('top');
                if (top === "-180px") {
                    TweenMax.to(".nav_in", .4, {top:"20"});
                    TweenMax.to([".trii, .trii_h"], .2, {rotation:"180"});
                }
                else {
                    TweenMax.to(".nav_in", .4, {top:"-180px"});
                    TweenMax.to([".trii, .trii_h"], .2, {rotation:"0"});
                }
            }

对应的 HTML(<a> 标记,起初,与其余标记相同的 href="javascript:scrldown()" 而不是 onclick,但两种方法都可以在没有 jQuery 的情况下工作):

<a href="javascript:void(0)" onclick="scrldown()">
                    <img src="../images/scrl_tri.png" id="tri" height="21px;" class="trii" />
                    <img src="../images/scrl_tri_hov.png" id="tri" height="21px" class="trii_h" />
                </a>
<span class="shop"><a href="javascript:scrldown()">Shop</a></span>
<span class="gallery"><a href="javascript:scrldown()">Gallery</a></span>


&lt;div id="wrap-left" onmouseover="bordcol()" onmouseout="bordcolBlack()"&gt;
和(map-canvas 是其中的一个 div):
function bordcol() {
                document.getElementById("map-canvas").style.borderTop="1px solid #F8CE26";
            }

            function bordcolBlack() {
                document.getElementById("map-canvas").style.borderTop="1px solid #9F9F9F";
            }


这是&lt;header&gt;中的“src&lt;script&gt;s:
<script src="../js/jquery.js"></script>
<script src="../js/jquery_validate/dist/jquery.validate.js"></script>

我还有一些其他的插件,但是没有一个依赖于 jQuery,而且 jQuery 也是第一个导入的。
顺便说一句——如果重要的话——插件是 jQuery Validation Plugin


很抱歉写了这么多代码,但我真的希望你们能帮我解决这个问题(当然,除非我错过了一些非常愚蠢的东西。然后指出来)。
应该注意的是,我在 jQuery 方面的知识非常有限,我可能遗漏了一些对你来说非常明显和愚蠢的东西,所以即使你看不到直接的答案,请评论一些简单的 jQuery 规则,可能在这里看不到,但很重要/至关重要。
谢谢!

【问题讨论】:

  • rulesmessages 之间的 validate() 调用中缺少一个“逗号”(,) ...应该是这样的:validate({request:{...}, messages: {...}})
  • @leo.fcx 伙计,你应该刚刚回答了:)。有效! (好吧,插件没有完成它的工作,但至少它没有搞砸其他任何事情。这是一个不同的问题)。谢谢!
  • 好的,答案就在眼前 :)

标签: javascript jquery html jquery-plugins


【解决方案1】:

您的代码中有错字,rulesmessages 之间缺少逗号 (,),应该是:

$("#mailSender").validate({
    rules: { ... }, // this comma is missing
    messages: { ... }
});

【讨论】:

    猜你喜欢
    • 2020-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-01
    相关资源
    最近更新 更多