12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- <!DOCTYPE html>
- <html>
- <!--
- Copyright 2010 The Closure Library Authors. All Rights Reserved.
- Use of this source code is governed by the Apache License, Version 2.0.
- See the COPYING file for details.
- -->
- <head>
- <script type="text/javascript" src="../../../base.js"></script>
- <script type="text/javascript">
- goog.require('goog.dom');
- goog.require('goog.dom.TagName');
- goog.require('goog.events');
- goog.require('goog.net.xpc.CrossPageChannel');
- </script>
- <script type="text/javascript">
- var channel;
- var logEl;
- /**
- * Writes a message to the log.
- * @param {string} msg The message text.
- */
- function log(msg) {
- logEl || (logEl = goog.dom.getElement('log'));
- var msgEl = goog.dom.createDom(goog.dom.TagName.DIV);
- msgEl.innerHTML = msg;
- logEl.insertBefore(msgEl, logEl.firstChild);
- }
- goog.events.listen(window, 'load', function() {
- // Get the channel configuration from the URI parameter.
- var cfg = goog.json.parse(
- (new goog.Uri(window.location.href)).getParameterValue('xpc'));
- // Create the channel.
- channel = new goog.net.xpc.CrossPageChannel(cfg);
- channel.registerService('log', log);
- channel.connect(function() {
- log('Channel connected.');
- });
- });
- </script>
- <style type="text/css">
- body {
- background-color: #ddffff;
- font-family: arial,verdana;
- font-size: 12px;
- }
- </style>
- </head>
- <body>
- <h3><script type="text/javascript">document.write(location.href.replace(/\?.*/,'?...'))</script></h3>
- <p>
- <input type="text" id="msgInput" value="Hello from the iframe."
- style="width:250px">
- <input type="button" value="Send" onclick="
- channel.send('log', goog.dom.getElement('msgInput').value)">
- </p>
- <div id="log" style="border: 1px #000 solid"></div>
- </body>
- </html>
|