2012-03-02 74 views
0

我正在使用Flexslider,並且在iframe中有一個嵌入Vimeo視頻的滑塊,然後滑塊的其餘部分充滿了與視頻大小相同的圖片。Safari中的FlexSlider視頻iframe問題

在大多數瀏覽器EXCEPCT Safari中,滑塊+視頻效果很好。當Safari加載滑塊時,視頻似乎在奇怪的位置有點偏移。視頻播放有點波動,控件無響應。這是非常令人沮喪的,因爲滑塊在所有其他瀏覽器中運行良好,FlexSlider的文檔說它支持所有HTML元素。

有什麼我可以做的,讓這個視頻在Safari中正確播放?

這裏是我的代碼

<div class="flexslider"> 
    <ul class="slides"> 
    <li> 
    <div id="iframeContainer"> 
     <iframe src="http://player.vimeo.com/video/35534572?title=0&amp;api=1&amp;byline=0&amp;portrait=0&amp;color=ffffff" width="960" height="540" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe> 
    </div> 
    </li> 
    <li> 
     <img src="MOTOROLA_BTS_01.jpg" /> 
    </li> 
    <li> 
     <img src="MOTOROLA_BTS_02.jpg" />  
    </li> 
    </ul> 
</div> 

以及相應的CSS:

.flex-container a:active, 
.flexslider a:active {outline: none;} 
.slides, 
.flex-control-nav, 
.flex-direction-nav {margin: 0; padding: 0; list-style: none;} 

/* FlexSlider Necessary Styles 
*********************************/ 
.flexslider {width: 960px; margin: 0; padding: 0;} 
.flexslider .slides > li {display: none;-webkit-backface-visibility: hidden;} /* Hide the slides before the JS is loaded. Avoids image jumping */ 
.flexslider .slides img {max-width: 100%; display: block;} 
.flex-pauseplay span {text-transform: capitalize;} 

/* Clearfix for the .slides element */ 
.slides:after {content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0;} 
html[xmlns] .slides {display: block;} 
* html .slides {height: 1%;} 

/* No JavaScript Fallback */ 
/* If you are not using another script, such as Modernizr, make sure you 
* include js that eliminates this class on page load */ 
.no-js .slides > li:first-child {display: block;} 

.flex-direction-nav li a {width: 60px; height: 60px; margin: -13px 0 0; display: block; position: absolute; top: 50%; cursor: pointer; text-indent: -9999px;} 
.flex-direction-nav li .next {background-image:url(Arrow_02_B.png);margin-top:-300px;margin-left:900px;} 
.flex-direction-nav li .prev {background-image:url(Arrow_02_A.png);margin-top:-300px;} 
.flex-direction-nav li .disabled {opacity: .3; filter:alpha(opacity=30); cursor: default;} 


#iframeContainer{ 
    width:960px; 
    height:540px; 
} 

編輯:我把頁面上的滑塊以外的嵌入式視頻,它甚至沒有顯示出來在Safari中。我在哪裏可以看到一些視頻。同樣,它在所有其他瀏覽器中正常顯示。

編輯:更多疑難解答。我將滑塊和視頻並排放置。該視頻仍然在Safari中斷。但是,如果我不初始化幻燈片,視頻工作正常。該視頻不在幻燈片中,完全獨立。但是當我重新打開幻燈片時,視頻就會中斷。

回答

0

爲了防止其他人遇到此問題,它看起來像一個視頻功能已添加到flexslider。我遇到了與此處所述相同的問題,但在初始化flexslider後將視頻標誌變爲true後,視頻開始工作。

$('.flexslider').flexslider({ 
    animation: "slide",  
    video: true 
}); 

在旁註中,視頻標誌使得滑塊在觸摸設備上使用時的響應性較差。它仍然有效,但嘗試滑動到下一個圖像/視頻時會有延遲。

0

碰到同樣的問題。這個問題是由於safari中的transform3d錯誤造成的。 請參閱下面的鏈接以獲取完整的問題並解決。

https://github.com/woothemes/FlexSlider/issues/88

總結修復:

下載最新版本V1.8,並使用屬性useCSS: false.它將刪除>使用translate3d這在WebKit瀏覽器導致這些視頻錯誤的。

雖然它的一個很老的帖子。希望它可以幫助未來的人:)