使用asp.net主页时,浏览器无法识别JQuery prettyPhoto()

时间:2011-01-23 01:24:49

标签: .net asp.net master-pages

<script src="Scripts/jquery.prettyPhoto.js" type="text/javascript"></script> 
<script src="Scripts/jquery-1.4.4.min.js" type="text/javascript"></script> 
 
<a href="http://www.youtube-nocookie.com/v/Bkjv9SscotY&hl=it_IT&fs=1?rel=0" rel="prettyPhoto" title="">you tube 
</a> 
<script type="text/javascript"> 
 
    $(document).ready(
function () {
    $(
"a[rel^='prettyPhoto']").prettyPhoto();
});
 
</script> 

3 个答案:

答案 0 :(得分:1)

使用

<script src="<%= ResolveUrl("~/Scripts/jquery.prettyPhoto.js") %>" type="text/javascript"></script>

答案 1 :(得分:1)

如果您的文件夹结构如下所示

/Scripts/jquery.prettyPhoto.js
/Scripts/someOtherscript.js
/SomeFolder/bob.aspx
sam.aspx
default.aspx

如果您使用src =“scripts / file.js”引用您的js文件,它将适用于sam.aspx和default.aspx,但它不适用于bob.aspx

如果不包含前导斜杠,则会在当前文件夹中查找。因此,如果您在bob.aspx上引用该脚本,则会查找此文件/somefolder/script/file.js

所以,回答你的问题(假设我做了一个很好的假设),你只需要在src =“script中添加一个前导斜杠。它应该是src =”/ script /...

答案 2 :(得分:0)

ResolveUrl是一个不错的选择,但如果你使用正确的js路径,它不是最理想的解决方案。因为你将使用友好的网址,然后从根目录取用它并使用〜签署它基本上告诉服务器从文件夹的根目录开始,所以即使你早先用一个文件夹发布了应用程序,也可以说inetpub / wwwroot / AppName / WebUI中/

现在将其更改为inetpub / wwwroot / AppName /你的应用程序不会崩溃,任何时候你得到类似的错误只需在浏览器上打开页面源,然后点击你的js文件链接,如果你能够导航对于js文件非常好,可能还有其他方案,例如身份验证设置,而iis不允许您访问它。