2012-07-17 97 views
0

我已阅读了与jQuery和Safari相关的其他帖子,以及其他人似乎并不适用于我的问题。我使用的是最新版本的jQuery,而且dreamweaver没有捕捉到任何错误。我迫切需要找出为什么这不起作用。它可以在Chrome和Firefox罚款(可惜我不能在此刻测试它的IE浏览器)jQuery在Safari中不能正常工作

<script src="../../zoom/jquery.min.js" type="text/javascript"></script> 
<script src="../../zoom/epic-image-zoom.min.js" type="text/javascript"></script> 

<script type="text/javascript"> 

jQuery(document).ready(function($){ 
    $('.my-image').epicZoom({largeImage: '../../images/large/domestic_musings/Gaylen-Beyond_zoom.jpg', magnification: 1}); 
}); 

</script> 

</head> 

<body> 

<div id="wrapper"> 
<div id="header"> </div> 
    <!--End "header"--> 

<div class="center"><img src="../../images/large/domestic_musings/Gaylen&amp;Beyond.jpg" alt="Gaylen and Beyond - large image " width="921" height="718" class="my-image" /></div> 
+5

“不工作”是什么意思?什么情况不应该发生?你得到什么错误? – j08691 2012-07-17 19:28:52

+1

你是否验证过你的HTML?无效的HTML解释了大部分跨浏览器问题。虽然,你从来没有解释过你有什么问题,所以我不知道。 – Sparky 2012-07-17 19:30:26

+0

如果你唯一要做的就是调用这个'epicZoom'插件,看起来问题出在插件上,而不是jQuery – jackwanders 2012-07-17 19:30:50

回答

1

尝试使用onload事件,因为你操纵高画质图像。当DOM准备好没有图像,所以你可能要改为尝试这样做的DOM已准备就绪事件触发:

jQuery(window).load(function($){ 
    $('.my-image').epicZoom({largeImage: '../../images/large/domestic_musings/Gaylen-Beyond_zoom.jpg', magnification: 1}); 
}); 
+0

+1:我从中学到了。 – 2012-07-17 19:31:49

+0

我很抱歉。我是JavaScript/jQuery的新手。 (window).load使脚本无法在任何浏览器中工作。 HTML已被验证,并没有问题。该功能应创建一个方形悬停,将图像放大2倍。在Safari中,正方形显示,但不放大。它在其他浏览器中工作得很好。我会看看我能做些什么关于Safari中的开发人员工具。 – 2012-07-17 20:09:14

+1

我很欣赏这个建议。看来问题在于该插件不适用于最新版本的Safari。 – 2012-07-17 22:12:18

0

要在这里发表@斯帕克的评论,而不是让人们真正看到它。这是我的修补程序。 jQuery事件并未在Safari中触发(但它们在其他浏览器上)。我去了W3C的HTML验证器,修正了错误,并解决了这个问题。

您是否验证过您的HTML?无效的HTML解释了大多数跨浏览器的问题 问题。虽然,你从来没有解释你有什么问题,所以 我不知道。 - Sparky 12年7月17日在19:30