Skip to content

Instantly share code, notes, and snippets.

@mwcraig
Created January 10, 2019 03:19
Show Gist options
  • Save mwcraig/09e34b463138ff1ffa29ffc75fcac6be to your computer and use it in GitHub Desktop.
Save mwcraig/09e34b463138ff1ffa29ffc75fcac6be to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Example of scrolling sort of working over iframe"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This notebook shows how to start up the WorldWide Telescope Jupyter widget, and how to subsequently modify its properties. You can find out more about using pywwt in the [documentation](http://pywwt.readthedocs.io).\n",
"\n",
"We start off by importing the ``WWTJupyterWidget`` class:"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"from pywwt.jupyter import WWTJupyterWidget\n",
"from ipywidgets import HBox, IntSlider, HTML\n",
"from ipyevents import Event\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We then use this class to create the widget (note that the second ``wwt`` is needed to actually show the contents of the widget):"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"scrolled": false
},
"outputs": [],
"source": [
"# wwt = WWTJupyterWidget()\n",
"\n",
"html = \"\"\"\n",
"<iframe src='http://physics.mnstate.edu'></iframe>\n",
"\"\"\""
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Scrolling is suppressed *except* over iframe\n",
"\n",
"Anything on or inside the red border has scrolling of the outer page suppressed except the wwt widget."
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "dcea472e3d5444909afe0d7fc151e245",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
"HBox(children=(HTML(value=\"\\n<iframe src='http://physics.mnstate.edu'></iframe>\\n\"), IntSlider(value=0)), layo…"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"s = IntSlider()\n",
"hb = HBox()\n",
"h = HTML(html)\n",
"hb.children = [h, s]\n",
"hb.layout.border = \"2px solid red\"\n",
"hb.layout.padding = \"20px\"\n",
"\n",
"e = Event()\n",
"e.source = hb\n",
"e.watched_events = ['wheel']\n",
"\n",
"hb"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Though you can scroll a lot further in an \"infinite scroll\" site like skittles.com\n",
"\n",
"(I got there by googling infinite scroll, not because I love skittles)"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [],
"source": [
"h.value = \"\"\"\n",
"<iframe src='http://skittles.com/'></iframe>\n",
"\"\"\""
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.7"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment