2010-04-19 85 views
0

我正在为摄影客户在线订购系统:Here。 (请原谅必须登录的要求)。jquery prettyPhoto和星星冲突.... DOM不加载?

登录后,用户可以使用每张图片下面列出的星星对图片进行评分,然后查看3星图片或4星图片等。但是,当用户点击图片时, (即prettyPhoto),其中包含图片以及下面列出的星星。我希望用户能够在Lightbox中为照片添加星号,但在prettyPhoto lightbox初始化后javascript未被传递。因此,他们无法为灯箱内的照片评分。我听说过类似的东西,但不知道如何解决这个问题。任何帮助,将不胜感激。谢谢!

+0

我忘了提及,事件名称应该是“订婚” – Dustin 2010-04-19 23:28:47

回答

0

这是否对你的工作:

$.noConflict(); 
$(function($) { 
    //you jquery here 
}); 
+0

我很新手....我究竟会如何实现这一点?我会把脚本引用放在那里吗? – Dustin 2010-04-19 23:56:07

+0

之前执行你的漂亮的照片脚本,只需把$ .noConflict()。像这样:例如。 即时通讯不知道这会解决你的问题,你可以试试。在这里阅读更多http://api.jquery.com/jQuery.noConflict/ – Puaka 2010-04-20 00:13:15

+0

我只在这个上使用jquery ....感谢虽然 – Dustin 2010-04-20 00:20:29

0

您已标记为“阿贾克斯”,是因为星评级系统正在通过AJAX拉吗?如果是这样,那么问题将是与星星绑定的(最有可能的)点击事件。你需要使用jQuery的“实时”或“委托”功能。

如果您在页面最初加载后(或在单击事件初始绑定后)的任何时候使用javascript将星形选择件的HTML写入DOM,也是如此。

或者问题可能是与选择的标记......如果,例如,你是星级系统是一样的东西:

<ul id="star-rating-system"> 
    <li><img href="star.png" alt="star" /></li> 
    <li><img href="star.png" alt="star" /></li> 
    <li><img href="star.png" alt="star" /></li> 
    <li><img href="star.png" alt="star" /></li> 
</ul> 

然后有可能是一个问题具有对两件事具有相同ID的页面,这会导致问题。

您是否认为您可以提供更多信息以提高清晰度?例如,星级评分系统的HTML,以及关于如何改变原始prettyPhoto javascript的信息。

+0

我有一个PHP的foreach循环查询数据库。该图像是一个链接到独特div的href。例如 ”id =“1”type =“radio”class =“star”/> ... div隐藏,直到我点击图像链接,然后我显示以下内容:

Dustin 2010-04-19 23:52:14

+0

什么是控制星级的JavaScript代码? – RussellUresti 2010-04-20 01:05:13

+0

$(窗口).load(函数(){ \t $( '星 ')点击(函数(){ \t \t ID = $(本).attr(' 身份证'); \t \t ids = id。分裂('//'); \t \t rating = ids [0]; \t \t image = ids [1]; \t \t email ='<?php echo $ _SESSION ['email'];?>'; \t \t if(image!= null){imagename,image,rating,rating,email:email},function(){imagename = image,rating,rating,email:email} (数据){ \t \t \t 警报\t(数据); \t \t \t \t \t}); \t \t \t} \t \t否则{ \t \t \t URL = “ /” +评级+ “#img_pic”; \t \t \t \t \t \t $( '#img_pic')。负载(URL,功能(数据){ \t \t \t \t $ .getScript( “<?PHP的回声$网址?>星/ jquery.rating.js” ); \t \t \t}); \t \t} \t \t \t}); \t \t \t }); – Dustin 2010-04-20 01:10:55