对象不支持属性或方法,但在intellisense中显示

时间:2014-02-11 06:16:38

标签: javascript jquery asp.net-mvc-4 popup

我正在尝试在我的网络应用程序中显示弹出窗口。我已经下载了一个名为bPopup的非常好的java脚本库,并为页面添加了一个脚本引用,但是当我运行应用程序时,我收到以下错误:

enter image description here

我确保在jQuery的脚本引用之后添加了bPopup的脚本引用。我也认为也许我正在使用的jQuery版本(jquery-1.8.2.js)不受支持所以我创建了一个WebForms应用程序并尝试在那里做弹出它可以工作但是在MVC 4.0应用程序中我是得到上述错误。此外,当我输入$(“#elementId”)并按时,我可以在intellisense中看到bPopup,但出于某种原因,当我尝试在document.ready()中调用它时,我收到错误。

视图中的脚本引用:

<link href="../../Content/animate.css" rel="stylesheet" type="text/css" />
<script src="../../Scripts/jquery-1.8.2.js" type="text/javascript"></script>
<script src="../../Scripts/jquery.bpopup-0.9.4.min.js" type="text/javascript"></script>
<script src="../../Scripts/jquery.easing.1.3.js" type="text/javascript"></script>
<script src="../../Scripts/knockout-2.2.0.js" type="text/javascript"></script>
<script src="../../Scripts/knockout-2.2.0.debug.js" type="text/javascript"></script>
<script type="text/javascript">
    $(document).ready(function () {
        $('#popup').bPopup();
    });
</script>

弹出式HTML:

<div id="popup">
    Content of popup
</div>

1 个答案:

答案 0 :(得分:0)

我找到解决此问题的唯一方法是使用getScript

 $.getScript("../../Scripts/jquery.bpopup-0.9.4.min.js", function () {
        $('#popup').bPopup({
            easing: 'easeOutBack', //uses jQuery easing plugin
            speed: 800,
            transition: 'slideDown'
        });
    });

我仍然想知道为什么脚本没有加载,即使我添加了对.js文件的引用,直到那时才会坚持这个工作