cubiq / iscroll

Smooth scrolling for the web
http://iscrolljs.com
MIT License
12.87k stars 3.8k forks source link

HTML5 video controls inaccessible #928

Open dcp3450 opened 9 years ago

dcp3450 commented 9 years ago

I have a carousel that uses HTML5 videos. The controls can be seen but not clicked/tapped. I've added "tap:true" and "click:true" to my scroller but it has no affect. Placing a video outside the iscroll container fixes the issue.

narthur commented 9 years ago

I believe I may be experiencing a similar issue with a search box. When clicking the submit button, Firefox's dev tools indicates the event fires on a parent element which has iscroll event listeners called "handleEvent" which seem to be catching the click.

ghost commented 9 years ago

Is there a solution for this? Also, flash player like jwplayer is inaccessible (user cannot click controls inside player).

dcp3450 commented 9 years ago

I had to create my own html5 player controls. I tried using third party players just like you did and had the same issue. Once I created my own controls it worked fine. One issue I did run into was the fullscreen option. Once the video went fullscreen I lost my custom controls. To fix this, when I clicked the fullscreen option I set the video to "position: fixed; top: 0; left: 0; width: 100%; height: 100%;" to simulate a fullscreen. Looks and works fine for me.

On Thu, Jul 30, 2015 at 10:44 AM, 4ants notifications@github.com wrote:

Is there a solution for this? Also, flash player like jwplayer is inaccessible (user cannot click controls inside player).

— Reply to this email directly or view it on GitHub https://github.com/cubiq/iscroll/issues/928#issuecomment-126352802.

Allen-su commented 9 years ago

@4ants set preventDefault:false

ghost commented 9 years ago

Yes, but documentation says that this action can cause unexpected results. So I added this:

preventDefaultException: {
    tagName: /^(INPUT|TEXTAREA|BUTTON|SELECT|OBJECT)$/
}
Allen-su commented 9 years ago

I had exactly same issue on android, but I put the HTML5 video label in an iframe label to fix it . But I don't know why