Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IE11 - Fullscreen doesn't work when disposing of another player on the same page #7013

Closed
tieutuvdanh opened this issue Dec 24, 2020 · 6 comments · Fixed by #7035
Closed

Comments

@tieutuvdanh
Copy link

Steps to reproduce

  1. I have two videos on the same page, suppose that video1 and video2
  2. Dispose of video1 by calling videojs("video1").dispose()
  3. Call videojs("video2").requestFullscreen()

Results

Video2 is not full screen and lost control bar
image

Expected

fullscreen is normal

Additional Information

versions

videojs

videojs 7.8.4

browsers

IE 11 OS 18363.1256

@welcome
Copy link

welcome bot commented Dec 24, 2020

👋 Thanks for opening your first issue here! 👋

If you're reporting a 🐞 bug, please make sure you include steps to reproduce it. We get a lot of issues on this repo, so please be patient and we will get back to you as soon as we can.
To help make it easier for us to investigate your issue, please follow the contributing guidelines.

@gkatsev
Copy link
Member

gkatsev commented Jan 5, 2021

Oops, this may be related to us listening to an event with a method on the Player prototype, then when getting disposed it removed all handlers rather than just for the instance.

@tieutuvdanh
Copy link
Author

Oops, this may be related to us listening to an event with a method on the Player prototype, then when getting disposed it removed all handlers rather than just for the instance.

Thanks for your answer, so have any ways to quickly fix it?
Currently, I'm using " delete videojs.getAllPlayers()["video1"]" and remove DOM HTML then creating new video

@gkatsev
Copy link
Member

gkatsev commented Jan 6, 2021

probably no easy way for you to fix it, but I'll take a look, it shouldn't be a hard fix for this. I'll take a look today.

@tieutuvdanh
Copy link
Author

probably no easy way for you to fix it, but I'll take a look, it shouldn't be a hard fix for this. I'll take a look today.

I don't want to manually remove DOM so thank you very much.

gkatsev added a commit that referenced this issue Jan 12, 2021
Using Video.js's .bind still makes us attach prototype methods as
handlers. Then when one is removed, all handlers are removed.

Instead, use arrow methods to make these methods unique.

Fixes #7013.
gkatsev added a commit that referenced this issue Jan 22, 2021
Using Video.js's .bind still makes us attach prototype methods as
handlers. Then when one is removed, all handlers are removed.

Instead, use arrow methods to make these methods unique.

Fixes #7013.
@gkatsev
Copy link
Member

gkatsev commented Jan 25, 2021

This is out in v7.11.3 now

@github-actions github-actions bot locked as resolved and limited conversation to collaborators May 25, 2022
edirub pushed a commit to edirub/video.js that referenced this issue Jun 8, 2023
Using Video.js's .bind still makes us attach prototype methods as
handlers. Then when one is removed, all handlers are removed.

Instead, use arrow methods to make these methods unique.

Fixes videojs#7013.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
2 participants