Any PiP
Imaging what if we can let anything Picture-in-Picture (not only <video />) ?! Here comes <msc-any-pip />
to let it dream comes true.
<msc-any-pip />
apply Document Picture-in-Picture API to given elements have Picture-in-Picture feature.
Check the following examples and to press the 「PiP
」 button (right-top corner) to see what can <msc-any-pip />
do ?
<msc-ez-video /> as child
<iframe /> as child
Image wall as child
Basic Usage
<msc-any-pip />
is a web component. All we need to do is put the required script into your HTML document. Then follow <msc-any-pip />
's html structure and everything will be all set.
Required Script
Structure
Put <msc-any-pip />
into HTML document. It will have different functions and looks with attribute mutation.
Otherwise, developers could also choose remoteconfig to fetch config for <msc-any-pip />
.
JavaScript Instantiation
<msc-any-pip />
could also use JavaScript to create DOM element. Here comes some examples.
Style Customization
Developers could apply styles to decorate <msc-any-pip />
's looking.
Otherwise delevelopers could also add className - align-container-size
to make <msc-any-pip />
's size same as container's size.(default is inline-size: 100%
only)
Attributes
<msc-any-pip />
supports some attributes to let it become more convenience & useful.
winwidth
Set Picture-in-Picture window width. Default is <msc-any-pip />
's clientWidth. (Picture-in-Picture's min window width is 300)
winheight
Set Picture-in-Picture window height. Default is <msc-any-pip />
's clientHeight. (Picture-in-Picture's min window height is 300)
disallowreturntoopener
Hides the "back to tab" button in the Picture-in-Picture window if true. It is false by default (not set).
preferinitialwindowplacement
Open the Picture-in-Picture window in its default position and size if true. It is false by default (not set).
Properties
Property Name | Type | Description |
---|---|---|
winwidth
|
Number | Getter / Setter for Picture-in-Picture window width. Default is <msc-any-pip />'s clientWidth. |
winheight
|
Number | Getter / Setter for Picture-in-Picture window height. Default is <msc-any-pip />'s clientHeight. |
disallowreturntoopener
|
Boolean | Getter / Setter for disallowreturntoopener. Hides the "back to tab" button in the Picture-in-Picture window if true. It is false by default. |
preferinitialwindowplacement
|
Boolean | Getter / Setter for preferinitialwindowplacement. Open the Picture-in-Picture window in its default position and size if true. It is false by default. |
Mathod
Mathod Signature | Description |
---|---|
requestPictureInPicture
|
Request <msc-any-pip /> turn in Document Picture-in-Picture mode. |
Events
Event Signature | Description |
---|---|
msc-any-pip-piping
|
Fired when Picture-in-Picture start. |
msc-any-pip-pip-end
|
Fired when Picture-in-Picture end. |