作者hera1016 ()
看板Ajax
标题[问题] jcarousel + google map 所产生的问题
时间Wed Jun 3 14:29:49 2009
我想做的一个东西是结合jcarousel和google map
(jcarousel:
http://sorgalla.com/jcarousel/
有蛮多种变型的
目前用到的是: Using jCarousel as a Textscroller
http://sorgalla.com/projects/jcarousel/examples/special_textscroller.html )
陈述一下大概的流程:
map 上有个 marker
click 後跳出 info-window
info-window 中再 show jcarousel 的内容
一个简单的范例:
http://www.csie.nctu.edu.tw/~yhlu/jcarousel/index.htm
除了官网提供的lib,其他 js 和 css 都是直接复制范例上的 code
但是有改一小部分:
拿掉:
jQuery('
#mycarousel').jcarousel({
vertical: true,
size: 0,
initCallback: mycarousel_initCallback
});
移到 map event 里:
GEvent.addListener(marker, "click", function() {
marker.openInfoWindowHtml('<div id="mycarousel"><ul></ul></div>');
jQuery('
#mycarousel').jcarousel({
vertical: true,
size: 0,
initCallback: mycarousel_initCallback
});
});
map.addOverlay(marker);
因为 mycarousel div 是 click marker 产生 info-window 後才会产生的
所以移到 event occurs 的 function 里
目前主要遇到两个问题:
1. 第一次 click marker 时,info-window 不会产生 jcarousel 的内容
必须要再一次click才会产生
这部份应该就是我前面提到我有修改的地方产生的问题
可是我不知道该怎改才对 >"<
2. 这一切在 FireFox 都跑得很顺利,但是在 IE 就会跳出警告...
jCarousel: No width/height set for items.
This will cause an infinite loop. Aborting...
囧rz...
这应该是library本身设计的,
虽然我有trace code,不过因为不是看得很懂,所以以下是纯猜测 >///<
如果放到 jcarousel-container 里面的 item 没有定义长宽
lib在计算 "画面上可以看得到的item" 时 会造成无线回圈
但是我不懂为什麽 FF 抓得到item的长宽 IE抓不到 orz...
btw 前面提到jcarousel有很多种变型
此篇文章遇到的问题主要是用 " Using jCarousel as a Textscroller "
但我之前有试过 (同样放到 map 的 info-window)
" Carousel with dynamic content loading via Ajax from the Flickr API "
http://sorgalla.com/projects/jcarousel/examples/dynamic_flickr_api.html
是没有这些问题滴 @@
版上各位强者如果知道问题出在哪 希望可以不吝告知
先说声谢谢罗 <(_ _)>
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.215.200
※ hera1016:转录至看板 Web_Design 06/03 14:48