first commit
35
接口说明/京西管理后台PC端/resources/Other.html
Normal file
@@ -0,0 +1,35 @@
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
</head>
|
||||
<body>
|
||||
<br />
|
||||
<div style="width:100%; text-align:center; font-family:Arial; font-size:12px;" id=other></div>
|
||||
<br />
|
||||
<div style="width:100%; text-align:center; font-family:Arial; font-size:12px;">
|
||||
<button onclick="parent.window.close();">
|
||||
Close
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<SCRIPT src="axurerp_pagescript.js"></SCRIPT>
|
||||
|
||||
<script language=javascript>
|
||||
function getQueryVariable(variable) {
|
||||
var query = window.location.hash.substring(1);
|
||||
var vars = query.split("&&&");
|
||||
for (var i=0;i<vars.length;i++) {
|
||||
var pair = vars[i].split("=");
|
||||
if (pair[0] == variable) {
|
||||
return decodeURI(pair[1]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var other = document.getElementById('other');
|
||||
other.innerHTML = getQueryVariable('other');
|
||||
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
BIN
接口说明/京西管理后台PC端/resources/chrome/allow_access.gif
Normal file
|
After Width: | Height: | Size: 9.5 KiB |
BIN
接口说明/京西管理后台PC端/resources/chrome/axure-chrome-extension.crx
Normal file
BIN
接口说明/京西管理后台PC端/resources/chrome/axure_logo.gif
Normal file
|
After Width: | Height: | Size: 3.0 KiB |
BIN
接口说明/京西管理后台PC端/resources/chrome/axure_logo.png
Normal file
|
After Width: | Height: | Size: 8.7 KiB |
175
接口说明/京西管理后台PC端/resources/chrome/chrome.html
Normal file
@@ -0,0 +1,175 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>Install the Axure RP Chrome Extension</title>
|
||||
<style type="text/css">
|
||||
*
|
||||
{
|
||||
font-family: Helvetica, Arial, sans-serif;
|
||||
}
|
||||
body
|
||||
{
|
||||
text-align: center;
|
||||
background-color: #fafafa;
|
||||
}
|
||||
p
|
||||
{
|
||||
font-size: 14px;
|
||||
line-height: 18px;
|
||||
color: #333333;
|
||||
}
|
||||
div.container
|
||||
{
|
||||
width: 980px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
text-align: left;
|
||||
}
|
||||
a
|
||||
{
|
||||
text-decoration: none;
|
||||
color: #009dda;
|
||||
}
|
||||
.button
|
||||
{
|
||||
background: #E31687;
|
||||
font: normal 16px Arial, sans-serif;
|
||||
color: #FFFFFF;
|
||||
padding: 8px 25px 8px 25px;
|
||||
border: 0;
|
||||
display: inline-block;
|
||||
margin-top: 10px;
|
||||
text-transform: uppercase;
|
||||
font-size: 13px;
|
||||
}
|
||||
a:hover.button
|
||||
{
|
||||
opacity: .8;
|
||||
}
|
||||
div.left
|
||||
{
|
||||
width: 400px;
|
||||
float: left;
|
||||
margin-right: 80px;
|
||||
}
|
||||
div.right
|
||||
{
|
||||
width: 400px;
|
||||
float: left;
|
||||
}
|
||||
div.buttonContainer
|
||||
{
|
||||
text-align: center;
|
||||
}
|
||||
h1
|
||||
{
|
||||
font-size: 40px;
|
||||
color: #333333;
|
||||
line-height: 50px;
|
||||
margin-bottom: 20px;
|
||||
font-weight: normal;
|
||||
}
|
||||
h2
|
||||
{
|
||||
font-size: 38px;
|
||||
font-weight: normal;
|
||||
color: #08639C;
|
||||
text-align: center;
|
||||
}
|
||||
h3
|
||||
{
|
||||
font-size: 20px;
|
||||
color: #333333;
|
||||
font-weight: normal;
|
||||
}
|
||||
.heading
|
||||
{
|
||||
background-color: #cdecf9;
|
||||
height: 36px;
|
||||
line-height: 36px;
|
||||
padding-left: 20px;
|
||||
font-size: 16px;
|
||||
color: #666666;
|
||||
}
|
||||
span.faq
|
||||
{
|
||||
font-size: 16px;
|
||||
font-weight: normal;
|
||||
color: #333333;
|
||||
display: block;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="container">
|
||||
<br />
|
||||
<br />
|
||||
<img src="axure_logo.png" alt="axure" />
|
||||
<br />
|
||||
<h1>
|
||||
AXURE RP EXTENSION<br />
|
||||
For Chrome</h1>
|
||||
<p style="font-size: 14px; color: #666666; margin-top: 10px;">
|
||||
Google Chrome requires an extension to view locally stored projects. Alternatively,
|
||||
upload your RP file to <a href="https://share.axure.com">Axure Share</a> or use a different
|
||||
browser.</p>
|
||||
<h3 class="heading">
|
||||
VIEW LOCAL PROJECTS IN CHROME</h3>
|
||||
<div class="left">
|
||||
<h3>
|
||||
1. Install Extension from Chrome Store</h3>
|
||||
<div class="buttonContainer">
|
||||
<a class="button" href="https://chrome.google.com/webstore/detail/dogkpdfcklifaemcdfbildhcofnopogp"
|
||||
target="_blank">Install Extension</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="right">
|
||||
<h3>
|
||||
2. Open the Extensions Options</h3>
|
||||
<img src="extensions_menu.gif" alt="extensions" />
|
||||
</div>
|
||||
<div style="clear: both; height: 20px;">
|
||||
</div>
|
||||
<div class="left">
|
||||
<h3>
|
||||
3. Check "Allow access to file URLs"</h3>
|
||||
<img src="allow_access.gif" alt="allow access" />
|
||||
</div>
|
||||
<div class="right">
|
||||
<h3>
|
||||
4. Click the button below</h3>
|
||||
<div class="buttonContainer">
|
||||
<a class="button" href="../../start.html">View in Chrome</a>
|
||||
</div>
|
||||
</div>
|
||||
<div style="clear: both; height: 20px;">
|
||||
</div>
|
||||
<h3 class="heading">
|
||||
EXTENSION FAQ</h3>
|
||||
<p>
|
||||
<span class="faq">What is a Chrome Extension?</span> Extensions are downloadable
|
||||
plug-ins for Google Chrome that modify the browser<br />
|
||||
and allow you additional capabilities.
|
||||
</p>
|
||||
<p style="margin-top: 25px;">
|
||||
<span class="faq">Why do I need to install the extension?</span> Google requires
|
||||
this extension to be installed to allow the viewing of local files in<br />
|
||||
Chrome
|
||||
</p>
|
||||
<p style="margin-top: 25px; margin-bottom: 25px;">
|
||||
<span class="faq">Why does this extension require a high access level?</span> This
|
||||
extension requires a high access level to allow the viewing of the file://<br />
|
||||
protocol. Axure does not track or access any of your information.
|
||||
</p>
|
||||
<h3 class="heading">
|
||||
ROUND UP</h3>
|
||||
<p>
|
||||
Chrome requires this extension to be installed to view local files.</p>
|
||||
<p>
|
||||
Need help or have any questions? Drop us a line at <a href="mailto:support@axure.com">
|
||||
support@axure.com</a>.
|
||||
</p>
|
||||
<div style="clear: both; height: 20px;">
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
BIN
接口说明/京西管理后台PC端/resources/chrome/extensions_menu.gif
Normal file
|
After Width: | Height: | Size: 9.1 KiB |
151
接口说明/京西管理后台PC端/resources/chrome/safari.html
Normal file
@@ -0,0 +1,151 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>Axure RP - Safari Local File Restrictions</title>
|
||||
<style type="text/css">
|
||||
*
|
||||
{
|
||||
font-family: Helvetica, Arial, sans-serif;
|
||||
}
|
||||
body
|
||||
{
|
||||
text-align: center;
|
||||
background-color: #fafafa;
|
||||
}
|
||||
p
|
||||
{
|
||||
font-size: 14px;
|
||||
line-height: 18px;
|
||||
color: #333333;
|
||||
}
|
||||
div.container
|
||||
{
|
||||
width: 980px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
text-align: left;
|
||||
}
|
||||
a
|
||||
{
|
||||
text-decoration: none;
|
||||
color: #009dda;
|
||||
}
|
||||
.button
|
||||
{
|
||||
background: #E31687;
|
||||
font: normal 16px Arial, sans-serif;
|
||||
color: #FFFFFF;
|
||||
padding: 8px 25px 8px 25px;
|
||||
border: 0;
|
||||
display: inline-block;
|
||||
margin-top: 10px;
|
||||
text-transform: uppercase;
|
||||
font-size: 13px;
|
||||
}
|
||||
a:hover.button
|
||||
{
|
||||
opacity: .8;
|
||||
}
|
||||
div.left
|
||||
{
|
||||
width: 400px;
|
||||
float: left;
|
||||
margin-right: 80px;
|
||||
}
|
||||
div.right
|
||||
{
|
||||
width: 400px;
|
||||
float: left;
|
||||
}
|
||||
div.buttonContainer
|
||||
{
|
||||
text-align: center;
|
||||
}
|
||||
h1
|
||||
{
|
||||
font-size: 40px;
|
||||
color: #333333;
|
||||
line-height: 50px;
|
||||
margin-bottom: 20px;
|
||||
font-weight: normal;
|
||||
}
|
||||
h2
|
||||
{
|
||||
font-size: 38px;
|
||||
font-weight: normal;
|
||||
color: #08639C;
|
||||
text-align: center;
|
||||
}
|
||||
h3
|
||||
{
|
||||
font-size: 18px;
|
||||
line-height: 24px;
|
||||
color: #333333;
|
||||
font-weight: normal;
|
||||
}
|
||||
.heading
|
||||
{
|
||||
background-color: #cdecf9;
|
||||
height: 36px;
|
||||
line-height: 36px;
|
||||
padding-left: 20px;
|
||||
font-size: 16px;
|
||||
color: #666666;
|
||||
}
|
||||
span.faq
|
||||
{
|
||||
font-size: 16px;
|
||||
font-weight: normal;
|
||||
color: #333333;
|
||||
display: block;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="container">
|
||||
<br />
|
||||
<br />
|
||||
<img src="axure_logo.png" alt="axure" />
|
||||
<br />
|
||||
<h1>
|
||||
SAFARI LOCAL FILE RESTRICTIONS</h1>
|
||||
<p style="font-size: 16px; line-height: 24px; color: #666666; margin-top: 10px;">
|
||||
To view locally stored projects in Safari, you will need to "disable local file restrictions". Alternatively,
|
||||
you can upload your RP file to <a href="https://share.axure.com">Axure Share</a> or publish the local files to a web server.</p>
|
||||
<h3 class="heading">
|
||||
VIEW LOCAL PROJECTS IN SAFARI</h3>
|
||||
<div class="">
|
||||
<h3>
|
||||
1. Open <span style="font-weight: bold">Safari > Preferences > Advanced</span> and check the option to <span style="font-weight: bold">Show Develop menu in menu bar</span></h3>
|
||||
<img src="safari_advanced.png" alt="advanced" />
|
||||
</div>
|
||||
<div style="clear: both; height: 20px;">
|
||||
|
||||
</div>
|
||||
<div class="">
|
||||
<h3>
|
||||
2. Select <span style="font-weight: bold">Develop > Disable Local File Restrictions</span> in the menu bar</h3>
|
||||
<img src="safari_restrictions.png" alt="extensions" />
|
||||
</div>
|
||||
<div style="clear: both; height: 20px;">
|
||||
</div>
|
||||
<div class="left">
|
||||
<h3>
|
||||
3. Click the button below
|
||||
</h3>
|
||||
<div class="buttonContainer">
|
||||
<a class="button" href="../../start.html">View in Safari</a>
|
||||
</div>
|
||||
</div>
|
||||
<div style="clear: both; height: 20px;">
|
||||
</div>
|
||||
<h3 class="heading">
|
||||
NEED HELP?</h3>
|
||||
<p>
|
||||
Need help or have any questions? Drop us a line at <a href="mailto:support@axure.com">
|
||||
support@axure.com</a>.
|
||||
</p>
|
||||
<div style="clear: both; height: 20px;">
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
BIN
接口说明/京西管理后台PC端/resources/chrome/safari_advanced.png
Normal file
|
After Width: | Height: | Size: 83 KiB |
BIN
接口说明/京西管理后台PC端/resources/chrome/safari_restrictions.png
Normal file
|
After Width: | Height: | Size: 149 KiB |
BIN
接口说明/京西管理后台PC端/resources/chrome/splitter.gif
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
接口说明/京西管理后台PC端/resources/chrome/splitter.png
Normal file
|
After Width: | Height: | Size: 251 B |
239
接口说明/京西管理后台PC端/resources/css/axure_rp_page.css
Normal file
@@ -0,0 +1,239 @@
|
||||
/* so the window resize fires within a frame in IE7 */
|
||||
html, body {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
a {
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
p {
|
||||
margin: 0px;
|
||||
text-rendering: optimizeLegibility;
|
||||
font-feature-settings: "kern" 1;
|
||||
-webkit-font-feature-settings: "kern";
|
||||
-moz-font-feature-settings: "kern";
|
||||
-moz-font-feature-settings: "kern=1";
|
||||
font-kerning: normal;
|
||||
}
|
||||
|
||||
iframe {
|
||||
background: #FFFFFF;
|
||||
}
|
||||
|
||||
/* to match IE with C, FF */
|
||||
input {
|
||||
padding: 1px 0px 1px 0px;
|
||||
box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
}
|
||||
|
||||
textarea {
|
||||
margin: 0px;
|
||||
box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
}
|
||||
|
||||
div.intcases {
|
||||
font-family: arial;
|
||||
font-size: 12px;
|
||||
text-align:left;
|
||||
border:1px solid #AAA;
|
||||
background:#FFF none repeat scroll 0% 0%;
|
||||
z-index:9999;
|
||||
visibility:hidden;
|
||||
position:absolute;
|
||||
padding: 0px;
|
||||
border-radius: 3px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
div.intcaselink {
|
||||
cursor: pointer;
|
||||
padding: 3px 8px 3px 8px;
|
||||
margin: 5px;
|
||||
background:#EEE none repeat scroll 0% 0%;
|
||||
border:1px solid #AAA;
|
||||
border-radius: 3px;
|
||||
}
|
||||
|
||||
div.refpageimage {
|
||||
position: absolute;
|
||||
left: 0px;
|
||||
top: 0px;
|
||||
font-size: 0px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
cursor: pointer;
|
||||
background-image: url(images/newwindow.gif);
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
|
||||
div.annnoteimage {
|
||||
position: absolute;
|
||||
left: 0px;
|
||||
top: 0px;
|
||||
font-size: 0px;
|
||||
/*width: 16px;
|
||||
height: 12px;*/
|
||||
cursor: help;
|
||||
/*background-image: url(images/note.gif);*/
|
||||
/*background-repeat: no-repeat;*/
|
||||
width: 13px;
|
||||
height: 12px;
|
||||
padding-top: 1px;
|
||||
text-align: center;
|
||||
background-color: #138CDD;
|
||||
-moz-box-shadow: 1px 1px 3px #aaa;
|
||||
-webkit-box-shadow: 1px 1px 3px #aaa;
|
||||
box-shadow: 1px 1px 3px #aaa;
|
||||
}
|
||||
|
||||
div.annnoteline {
|
||||
display: inline-block;
|
||||
width: 9px;
|
||||
height: 1px;
|
||||
border-bottom: 1px solid white;
|
||||
margin-top: 1px;
|
||||
}
|
||||
|
||||
div.annnotelabel {
|
||||
position: absolute;
|
||||
left: 0px;
|
||||
top: 0px;
|
||||
font-family: Helvetica,Arial;
|
||||
font-size: 10px;
|
||||
/*border: 1px solid rgb(166,221,242);*/
|
||||
cursor: help;
|
||||
/*background:rgb(0,157,217) none repeat scroll 0% 0%;*/
|
||||
padding: 1px 3px 1px 3px;
|
||||
white-space: nowrap;
|
||||
color: white;
|
||||
|
||||
background-color: #138CDD;
|
||||
-moz-box-shadow: 1px 1px 3px #aaa;
|
||||
-webkit-box-shadow: 1px 1px 3px #aaa;
|
||||
box-shadow: 1px 1px 3px #aaa;
|
||||
}
|
||||
|
||||
.annotation {
|
||||
font-size: 12px;
|
||||
padding-left: 2px;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
.annotationName {
|
||||
/*font-size: 13px;
|
||||
font-weight: bold;
|
||||
margin-bottom: 3px;
|
||||
white-space: nowrap;*/
|
||||
|
||||
font-family: 'Trebuchet MS';
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
margin-bottom: 5px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.annotationValue {
|
||||
font-family: Arial, Helvetica, Sans-Serif;
|
||||
font-size: 12px;
|
||||
color: #4a4a4a;
|
||||
line-height: 21px;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.noteLink {
|
||||
text-decoration: inherit;
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
.noteLink:hover {
|
||||
background-color: white;
|
||||
}
|
||||
|
||||
/* this is a fix for the issue where dialogs jump around and takes the text-align from the body */
|
||||
.dialogFix {
|
||||
position:absolute;
|
||||
text-align:left;
|
||||
border: 1px solid #8f949a;
|
||||
}
|
||||
|
||||
|
||||
@keyframes pulsate {
|
||||
from {
|
||||
box-shadow: 0 0 10px #15d6ba;
|
||||
}
|
||||
to {
|
||||
box-shadow: 0 0 20px #15d6ba;
|
||||
}
|
||||
}
|
||||
|
||||
@-webkit-keyframes pulsate {
|
||||
from {
|
||||
-webkit-box-shadow: 0 0 10px #15d6ba;
|
||||
box-shadow: 0 0 10px #15d6ba;
|
||||
}
|
||||
to {
|
||||
-webkit-box-shadow: 0 0 20px #15d6ba;
|
||||
box-shadow: 0 0 20px #15d6ba;
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-keyframes pulsate {
|
||||
from {
|
||||
-moz-box-shadow: 0 0 10px #15d6ba;
|
||||
box-shadow: 0 0 10px #15d6ba;
|
||||
}
|
||||
to {
|
||||
-moz-box-shadow: 0 0 20px #15d6ba;
|
||||
box-shadow: 0 0 20px #15d6ba;
|
||||
}
|
||||
}
|
||||
|
||||
.legacyPulsateBorder {
|
||||
/*border: 5px solid #15d6ba;
|
||||
margin: -5px;*/
|
||||
-moz-box-shadow: 0 0 10px 3px #15d6ba;
|
||||
box-shadow: 0 0 10px 3px #15d6ba;
|
||||
}
|
||||
|
||||
.pulsateBorder {
|
||||
animation-name: pulsate;
|
||||
animation-timing-function: ease-in-out;
|
||||
animation-duration: 0.9s;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
|
||||
-webkit-animation-name: pulsate;
|
||||
-webkit-animation-timing-function: ease-in-out;
|
||||
-webkit-animation-duration: 0.9s;
|
||||
-webkit-animation-iteration-count: infinite;
|
||||
-webkit-animation-direction: alternate;
|
||||
|
||||
-moz-animation-name: pulsate;
|
||||
-moz-animation-timing-function: ease-in-out;
|
||||
-moz-animation-duration: 0.9s;
|
||||
-moz-animation-iteration-count: infinite;
|
||||
-moz-animation-direction: alternate;
|
||||
}
|
||||
|
||||
.ax_default_hidden, .ax_default_unplaced{
|
||||
display: none;
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
.widgetNoteSelected {
|
||||
-moz-box-shadow: 0 0 10px 3px #138CDD;
|
||||
box-shadow: 0 0 10px 3px #138CDD;
|
||||
/*-moz-box-shadow: 0 0 20px #3915d6;
|
||||
box-shadow: 0 0 20px #3915d6;*/
|
||||
/*border: 3px solid #3915d6;*/
|
||||
/*margin: -3px;*/
|
||||
}
|
||||
|
||||
|
||||
.singleImg {
|
||||
display: none;
|
||||
visibility: hidden;
|
||||
}
|
||||
207
接口说明/京西管理后台PC端/resources/css/default.css
Normal file
@@ -0,0 +1,207 @@
|
||||
body {
|
||||
font-family : Arial, Helvetica, Sans-Serif;
|
||||
background-color: #8f949a;
|
||||
overflow:hidden;
|
||||
}
|
||||
a {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
input[type="radio"], input[type="checkbox"] {
|
||||
margin: 0px 9px 0px 0px;
|
||||
vertical-align: bottom;
|
||||
}
|
||||
|
||||
input {
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
#maximizePanelContainer {
|
||||
font-size: 4px;
|
||||
position:absolute;
|
||||
left: 0px;
|
||||
top: 0px;
|
||||
width: 55px;
|
||||
height: 20px;
|
||||
overflow: visible;
|
||||
z-index: 1000;
|
||||
}
|
||||
#maximizePanelOver {
|
||||
position: absolute;
|
||||
left: 0px;
|
||||
top: 0px;
|
||||
width: 55px;
|
||||
height: 20px;
|
||||
}
|
||||
.maximizePanel {
|
||||
position: absolute;
|
||||
left: 0px;
|
||||
top: 0px;
|
||||
width: 55px;
|
||||
height: 20px;
|
||||
background: #a2a2a2 url('../images/expand.png') no-repeat center center;
|
||||
background: url('../images/expand.svg') no-repeat center center, linear-gradient(rgba(200,200,200,.5),rgba(200,200,200,.5));
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
#interfaceControlFrameMinimizeContainer {
|
||||
position:absolute;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
font-size: 2px; /*for IE*/
|
||||
text-align: right;
|
||||
z-index: 100;
|
||||
height: 20px;
|
||||
width: 55px;
|
||||
background-color: #62666b;
|
||||
}
|
||||
#interfaceControlFrameMinimizeContainer a {
|
||||
display: inline-block;
|
||||
width: 55px;
|
||||
height: 20px;
|
||||
font-size: 2px;
|
||||
background: url('../images/close.png') no-repeat center center;
|
||||
background: url('../images/close.svg') no-repeat center center, linear-gradient(transparent,transparent);
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.hashover #interfaceControlFrameMinimizeContainer a:hover {
|
||||
background: url('../images/close_hover.png') no-repeat center center;
|
||||
background: url('../images/close_hover.svg') no-repeat center center, linear-gradient(transparent,transparent);
|
||||
}
|
||||
|
||||
#interfaceControlFrame {
|
||||
margin: 0px 0px 0px 55px;
|
||||
}
|
||||
|
||||
#interfaceControlFrameCloseContainer {
|
||||
/*display: none;*/
|
||||
position:absolute;
|
||||
bottom: 0px;
|
||||
left: 0px;
|
||||
font-size: 9px;
|
||||
font-family: 'Trebuchet MS';
|
||||
font-weight: bold;
|
||||
letter-spacing: 1px;
|
||||
z-index: 100;
|
||||
width: 55px;
|
||||
background-color: #62666b;
|
||||
text-align: center;
|
||||
}
|
||||
#interfaceControlFrameCloseContainer a {
|
||||
display: inline-block;
|
||||
width: 55px;
|
||||
color: #ffffff;
|
||||
padding: 5px 0px;
|
||||
}
|
||||
|
||||
#interfaceControlFrameHeader li a {
|
||||
display: block;
|
||||
width: 54px;
|
||||
height: 78px;
|
||||
text-align: center;
|
||||
padding-top: 50px;
|
||||
outline: none;
|
||||
margin-right: 1px;
|
||||
text-decoration: none;
|
||||
color: #ffffff;
|
||||
white-space: nowrap;
|
||||
background-color: transparent;
|
||||
background-repeat: no-repeat;
|
||||
background-position: 50% 17px;
|
||||
box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
-webkit-box-sizing: border-box;
|
||||
border-left: 4px solid transparent;
|
||||
border-right: 4px solid transparent;
|
||||
}
|
||||
|
||||
.hashover #interfaceControlFrameHeader li a:hover {
|
||||
background-color: transparent;
|
||||
background-repeat: no-repeat;
|
||||
background-position: 50% 17px;
|
||||
color: #c2c2c2;
|
||||
}
|
||||
|
||||
#interfaceControlFrameHeader li a.selected, #interfaceControlFrameHeader li a.selected:hover {
|
||||
background-color: #f5f5f5;
|
||||
background-repeat: no-repeat;
|
||||
background-position: 50% 17px;
|
||||
color: #62666b;
|
||||
border-left: 5px solid #138CDD;
|
||||
}
|
||||
|
||||
#interfaceControlFrameHeaderContainer {
|
||||
float: left;
|
||||
overflow: visible;
|
||||
width: 55px;
|
||||
margin-left: -55px;
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
#interfaceControlFrameHeader {
|
||||
position: relative;
|
||||
list-style: none;
|
||||
font-size: 8px;
|
||||
z-index: 50;
|
||||
font-family: 'Trebuchet MS';
|
||||
font-weight: bold;
|
||||
letter-spacing: 1px;
|
||||
}
|
||||
|
||||
#interfaceControlFrameContainer {
|
||||
float: right;
|
||||
background-color: #f5f5f5;
|
||||
overflow: hidden;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
#interfaceControlFrameLogoContainer {
|
||||
background-color: White;
|
||||
padding: 20px 10px 10px 10px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
#interfaceControlFrameLogoImageContainer {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#interfaceControlFrameLogoCaptionContainer {
|
||||
text-align: center;
|
||||
margin: 5px 10px 0px 10px;
|
||||
font-size: 12px;
|
||||
color: #4a4a4a;
|
||||
}
|
||||
|
||||
#logoImage {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.emptyStateContainer {
|
||||
text-align: center;
|
||||
padding: 0px 10px;
|
||||
margin-top: 32px
|
||||
}
|
||||
|
||||
.emptyStateTitle {
|
||||
margin: 0px 0px 9px 0px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.emptyStateContent {
|
||||
line-height: 16px;
|
||||
}
|
||||
|
||||
.dottedDivider {
|
||||
height: 2px;
|
||||
margin: 15px 0px 15px 0px;
|
||||
background: url('../images/divider.png') no-repeat center center;
|
||||
background: url('../images/divider.svg') no-repeat center center, linear-gradient(transparent,transparent);
|
||||
}
|
||||
|
||||
.nondottedDivider {
|
||||
height: 2px;
|
||||
margin: 9px 0px 9px 0px;
|
||||
}
|
||||
25
接口说明/京西管理后台PC端/resources/css/images/images.html
Normal file
@@ -0,0 +1,25 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
</head>
|
||||
<body>
|
||||
<p>
|
||||
<img border="0" src="note.gif" width="1" height="1">
|
||||
<img border="0" src="newwindow.gif" width="1" height="1">
|
||||
<img border="0" src="ui-bg_flat_0_aaaaaa_40x100.png" width="1" height="1">
|
||||
<img border="0" src="ui-bg_glass_55_fbf9ee_1x400.png" width="1" height="1">
|
||||
<img border="0" src="ui-bg_glass_65_ffffff_1x400.png" width="1" height="1">
|
||||
<img border="0" src="ui-bg_glass_75_dadada_1x400.png" width="1" height="1">
|
||||
<img border="0" src="ui-bg_glass_75_e6e6e6_1x400.png" width="1" height="1">
|
||||
<img border="0" src="ui-bg_glass_75_ffffff_1x400.png" width="1" height="1">
|
||||
<img border="0" src="ui-bg_highlight-soft_75_cccccc_1x100.png" width="1" height="1">
|
||||
<img border="0" src="ui-bg_inset-soft_95_fef1ec_1x100.png" width="1" height="1">
|
||||
<img border="0" src="ui-icons_222222_256x240.png" width="1" height="1">
|
||||
<img border="0" src="ui-icons_2e83ff_256x240.png" width="1" height="1">
|
||||
<img border="0" src="ui-icons_454545_256x240.png" width="1" height="1">
|
||||
<img border="0" src="ui-icons_888888_256x240.png" width="1" height="1">
|
||||
<img border="0" src="ui-icons_cd0a0a_256x240.png" width="1" height="1">
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
BIN
接口说明/京西管理后台PC端/resources/css/images/newwindow.gif
Normal file
|
After Width: | Height: | Size: 112 B |
BIN
接口说明/京西管理后台PC端/resources/css/images/note.gif
Normal file
|
After Width: | Height: | Size: 98 B |
|
After Width: | Height: | Size: 180 B |
|
After Width: | Height: | Size: 120 B |
|
After Width: | Height: | Size: 105 B |
|
After Width: | Height: | Size: 111 B |
|
After Width: | Height: | Size: 110 B |
|
After Width: | Height: | Size: 107 B |
|
After Width: | Height: | Size: 101 B |
|
After Width: | Height: | Size: 123 B |
BIN
接口说明/京西管理后台PC端/resources/css/images/ui-icons_222222_256x240.png
Normal file
|
After Width: | Height: | Size: 4.3 KiB |
BIN
接口说明/京西管理后台PC端/resources/css/images/ui-icons_2e83ff_256x240.png
Normal file
|
After Width: | Height: | Size: 4.3 KiB |
BIN
接口说明/京西管理后台PC端/resources/css/images/ui-icons_454545_256x240.png
Normal file
|
After Width: | Height: | Size: 4.3 KiB |
BIN
接口说明/京西管理后台PC端/resources/css/images/ui-icons_888888_256x240.png
Normal file
|
After Width: | Height: | Size: 4.3 KiB |
BIN
接口说明/京西管理后台PC端/resources/css/images/ui-icons_cd0a0a_256x240.png
Normal file
|
After Width: | Height: | Size: 4.3 KiB |
412
接口说明/京西管理后台PC端/resources/css/jquery-ui-themes.css
Normal file
@@ -0,0 +1,412 @@
|
||||
/*
|
||||
* jQuery UI CSS Framework
|
||||
* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about)
|
||||
* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses.
|
||||
*/
|
||||
|
||||
/* Layout helpers
|
||||
----------------------------------*/
|
||||
.ui-helper-hidden { display: none; }
|
||||
.ui-helper-hidden-accessible { position: absolute; left: -99999999px; }
|
||||
.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
|
||||
.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
|
||||
.ui-helper-clearfix { display: inline-block; }
|
||||
/* required comment for clearfix to work in Opera \*/
|
||||
* html .ui-helper-clearfix { height:1%; }
|
||||
.ui-helper-clearfix { display:block; }
|
||||
/* end clearfix */
|
||||
.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }
|
||||
|
||||
|
||||
/* Interaction Cues
|
||||
----------------------------------*/
|
||||
.ui-state-disabled { cursor: default !important; }
|
||||
|
||||
|
||||
/* Icons
|
||||
----------------------------------*/
|
||||
|
||||
/* states and images */
|
||||
.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }
|
||||
|
||||
|
||||
/* Misc visuals
|
||||
----------------------------------*/
|
||||
|
||||
/* Overlays */
|
||||
.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }/* Accordion
|
||||
----------------------------------*/
|
||||
.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; }
|
||||
.ui-accordion .ui-accordion-li-fix { display: inline; }
|
||||
.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; }
|
||||
.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em 2.2em; }
|
||||
.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; }
|
||||
.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; }
|
||||
.ui-accordion .ui-accordion-content-active { display: block; }
|
||||
|
||||
/* Datepicker
|
||||
----------------------------------*/
|
||||
.ui-datepicker { width: 17em; padding: .2em .2em 0; }
|
||||
.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }
|
||||
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; }
|
||||
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }
|
||||
.ui-datepicker .ui-datepicker-prev { left:2px; }
|
||||
.ui-datepicker .ui-datepicker-next { right:2px; }
|
||||
.ui-datepicker .ui-datepicker-prev-hover { left:1px; }
|
||||
.ui-datepicker .ui-datepicker-next-hover { right:1px; }
|
||||
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; }
|
||||
.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }
|
||||
.ui-datepicker .ui-datepicker-title select { float:left; font-size:1em; margin:1px 0; }
|
||||
.ui-datepicker select.ui-datepicker-month-year {width: 100%;}
|
||||
.ui-datepicker select.ui-datepicker-month,
|
||||
.ui-datepicker select.ui-datepicker-year { width: 49%;}
|
||||
.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { float: right; }
|
||||
.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }
|
||||
.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; }
|
||||
.ui-datepicker td { border: 0; padding: 1px; }
|
||||
.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; }
|
||||
.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; }
|
||||
.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }
|
||||
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }
|
||||
|
||||
/* with multiple calendars */
|
||||
.ui-datepicker.ui-datepicker-multi { width:auto; }
|
||||
.ui-datepicker-multi .ui-datepicker-group { float:left; }
|
||||
.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; }
|
||||
.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; }
|
||||
.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; }
|
||||
.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; }
|
||||
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; }
|
||||
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; }
|
||||
.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; }
|
||||
.ui-datepicker-row-break { clear:both; width:100%; }
|
||||
|
||||
/* RTL support */
|
||||
.ui-datepicker-rtl { direction: rtl; }
|
||||
.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; }
|
||||
.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; }
|
||||
.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; }
|
||||
.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; }
|
||||
.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; }
|
||||
.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; }
|
||||
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; }
|
||||
.ui-datepicker-rtl .ui-datepicker-group { float:right; }
|
||||
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
|
||||
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
|
||||
|
||||
/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
|
||||
.ui-datepicker-cover {
|
||||
display: none; /*sorry for IE5*/
|
||||
display/**/: block; /*sorry for IE5*/
|
||||
position: absolute; /*must have*/
|
||||
z-index: -1; /*must have*/
|
||||
filter: mask(); /*must have*/
|
||||
top: -4px; /*must have*/
|
||||
left: -4px; /*must have*/
|
||||
width: 200px; /*must have*/
|
||||
height: 200px; /*must have*/
|
||||
}
|
||||
|
||||
/* Dialog
|
||||
----------------------------------*/
|
||||
.ui-dialog { position: relative; padding: 0px; width: 300px;}
|
||||
.ui-dialog .ui-dialog-titlebar { padding: .3em .3em .1em .8em; font-size:.7em; position: relative; background-image: none; }
|
||||
.ui-dialog .ui-dialog-title { float: left; margin: .1em 0 .2em;
|
||||
font-family: 'Trebuchet MS';
|
||||
font-size: 15px;
|
||||
font-weight: normal;
|
||||
color: #ffffff;}
|
||||
.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .1em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; }
|
||||
.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; }
|
||||
.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { /*padding: 0;*/ }
|
||||
.ui-dialog .ui-dialog-content { border: 0; padding: .5em .2em; background: none; overflow: auto; zoom: 1; background-color: #ffffff;}
|
||||
.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; }
|
||||
.ui-dialog .ui-dialog-buttonpane button { float: right; margin: .5em .4em .5em 0; cursor: pointer; padding: .2em .6em .3em .6em; line-height: 1.4em; width:auto; overflow:visible; }
|
||||
.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; }
|
||||
.ui-draggable .ui-dialog-titlebar { cursor: move; background-color: #8f949a; border-bottom: 1px solid #d9d9d9;}
|
||||
|
||||
/* Progressbar
|
||||
----------------------------------*/
|
||||
.ui-progressbar { height:2em; text-align: left; }
|
||||
.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; }/* Resizable
|
||||
----------------------------------*/
|
||||
.ui-resizable { position: relative;}
|
||||
.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block;}
|
||||
.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; }
|
||||
.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0px; }
|
||||
.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0px; }
|
||||
.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0px; height: 100%; }
|
||||
.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0px; height: 100%; }
|
||||
.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; }
|
||||
.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; }
|
||||
.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; }
|
||||
.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;}/* Slider
|
||||
----------------------------------*/
|
||||
.ui-slider { position: relative; text-align: left; }
|
||||
.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; }
|
||||
.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; }
|
||||
|
||||
.ui-slider-horizontal { height: .8em; }
|
||||
.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; }
|
||||
.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; }
|
||||
.ui-slider-horizontal .ui-slider-range-min { left: 0; }
|
||||
.ui-slider-horizontal .ui-slider-range-max { right: 0; }
|
||||
|
||||
.ui-slider-vertical { width: .8em; height: 100px; }
|
||||
.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; }
|
||||
.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; }
|
||||
.ui-slider-vertical .ui-slider-range-min { bottom: 0; }
|
||||
.ui-slider-vertical .ui-slider-range-max { top: 0; }/* Tabs
|
||||
----------------------------------*/
|
||||
.ui-tabs { padding: .2em; zoom: 1; }
|
||||
.ui-tabs .ui-tabs-nav { list-style: none; position: relative; padding: .2em .2em 0; }
|
||||
.ui-tabs .ui-tabs-nav li { position: relative; float: left; border-bottom-width: 0 !important; margin: 0 .2em -1px 0; padding: 0; }
|
||||
.ui-tabs .ui-tabs-nav li a { float: left; text-decoration: none; padding: .5em 1em; }
|
||||
.ui-tabs .ui-tabs-nav li.ui-tabs-selected { padding-bottom: 1px; border-bottom-width: 0; }
|
||||
.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; }
|
||||
.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
|
||||
.ui-tabs .ui-tabs-panel { padding: 1em 1.4em; display: block; border-width: 0; background: none; }
|
||||
.ui-tabs .ui-tabs-hide { display: none !important; }
|
||||
/*
|
||||
* jQuery UI CSS Framework
|
||||
* Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about)
|
||||
* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses.
|
||||
* To view and modify this theme, visit http://jqueryui.com/themeroller/
|
||||
*/
|
||||
|
||||
|
||||
/* Component containers
|
||||
----------------------------------*/
|
||||
.ui-widget { font-family: Verdana,Arial,sans-serif/*{ffDefault}*/; font-size: 1.1em/*{fsDefault}*/; }
|
||||
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Verdana,Arial,sans-serif/*{ffDefault}*/; font-size: 1em; }
|
||||
.ui-widget-content { border: 1px solid #aaaaaa/*{borderColorContent}*/; background: #ffffff/*{bgColorContent}*/ url(images/ui-bg_glass_75_ffffff_1x400.png)/*{bgImgUrlContent}*/ 0/*{bgContentXPos}*/ 0/*{bgContentYPos}*/ repeat-x/*{bgContentRepeat}*/; color: #222222/*{fcContent}*/; }
|
||||
.ui-widget-content a { /*color: #222222*//*{fcContent}*/; }
|
||||
.ui-widget-header { border: none /*1px solid #aaaaaa*//*{borderColorHeader}*/; background: #D3D3D3/*{bgColorHeader}*/ url(images/ui-bg_highlight-soft_75_cccccc_1x100.png)/*{bgImgUrlHeader}*/ 0/*{bgHeaderXPos}*/ 50%/*{bgHeaderYPos}*/ repeat-x/*{bgHeaderRepeat}*/; color: #000000/*{fcHeader}*/; font-weight: bold; }
|
||||
.ui-widget-header a { color: #222222/*{fcHeader}*/; }
|
||||
|
||||
/* Interaction states
|
||||
----------------------------------*/
|
||||
.ui-state-default, .ui-widget-content .ui-state-default { border: none /*1px solid #d3d3d3*//*{borderColorDefault}*/; /*background: #e6e6e6*//*{bgColorDefault}*/ /*url(images/ui-bg_glass_75_e6e6e6_1x400.png)*//*{bgImgUrlDefault}*/ /*0*//*{bgDefaultXPos}*/ /*50%*//*{bgDefaultYPos}*/ /*repeat-x*//*{bgDefaultRepeat}*/ font-weight: normal/*{fwDefault}*/; color: #555555/*{fcDefault}*/; outline: none; }
|
||||
.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555/*{fcDefault}*/; text-decoration: none; outline: none; }
|
||||
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus { border: none /*1px solid #999999*//*{borderColorHover}*/; /*background: #dadada*//*{bgColorHover}*/ /*url(images/ui-bg_glass_75_dadada_1x400.png)*//*{bgImgUrlHover}*/ /*0*//*{bgHoverXPos}*/ /*50%*//*{bgHoverYPos}*/ /*repeat-x*//*{bgHoverRepeat}*/ font-weight: normal/*{fwDefault}*/; color: #212121/*{fcHover}*/; outline: none; }
|
||||
.ui-state-hover a, .ui-state-hover a:hover { color: #212121/*{fcHover}*/; text-decoration: none; outline: none; }
|
||||
.ui-state-active, .ui-widget-content .ui-state-active { border: 1px solid #aaaaaa/*{borderColorActive}*/; background: #ffffff/*{bgColorActive}*/ url(images/ui-bg_glass_65_ffffff_1x400.png)/*{bgImgUrlActive}*/ 0/*{bgActiveXPos}*/ 50%/*{bgActiveYPos}*/ repeat-x/*{bgActiveRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #212121/*{fcActive}*/; outline: none; }
|
||||
.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121/*{fcActive}*/; outline: none; text-decoration: none; }
|
||||
|
||||
/* Interaction Cues
|
||||
----------------------------------*/
|
||||
.ui-state-highlight, .ui-widget-content .ui-state-highlight {border: 1px solid #fcefa1/*{borderColorHighlight}*/; background: #fbf9ee/*{bgColorHighlight}*/ url(images/ui-bg_glass_55_fbf9ee_1x400.png)/*{bgImgUrlHighlight}*/ 0/*{bgHighlightXPos}*/ 50%/*{bgHighlightYPos}*/ repeat-x/*{bgHighlightRepeat}*/; color: #363636/*{fcHighlight}*/; }
|
||||
.ui-state-highlight a, .ui-widget-content .ui-state-highlight a { color: #363636/*{fcHighlight}*/; }
|
||||
.ui-state-error, .ui-widget-content .ui-state-error {border: 1px solid #cd0a0a/*{borderColorError}*/; background: #fef1ec/*{bgColorError}*/ url(images/ui-bg_inset-soft_95_fef1ec_1x100.png)/*{bgImgUrlError}*/ 0/*{bgErrorXPos}*/ 50%/*{bgErrorYPos}*/ repeat-x/*{bgErrorRepeat}*/; color: #cd0a0a/*{fcError}*/; }
|
||||
.ui-state-error a, .ui-widget-content .ui-state-error a { color: #363636/*{fcError}*/; }
|
||||
.ui-state-error-text, .ui-widget-content .ui-state-error-text { color: #cd0a0a/*{fcError}*/; }
|
||||
.ui-state-disabled, .ui-widget-content .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; }
|
||||
.ui-priority-primary, .ui-widget-content .ui-priority-primary { font-weight: bold; }
|
||||
.ui-priority-secondary, .ui-widget-content .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }
|
||||
|
||||
/* Icons
|
||||
----------------------------------*/
|
||||
|
||||
/* states and images */
|
||||
.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_222222_256x240.png)/*{iconsContent}*/; }
|
||||
.ui-widget-content .ui-icon {background-image: url(images/ui-icons_222222_256x240.png)/*{iconsContent}*/; }
|
||||
.ui-widget-header .ui-icon {background-image: url(images/ui-icons_454545_256x240.png)/*{iconsHeader}*/; }
|
||||
.ui-state-default .ui-icon { background-image: url(images/ui-icons_888888_256x240.png)/*{iconsDefault}*/; }
|
||||
.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_222222_256x240.png)/*{iconsHover}*/; }
|
||||
.ui-state-active .ui-icon {background-image: url(images/ui-icons_454545_256x240.png)/*{iconsActive}*/; }
|
||||
.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png)/*{iconsHighlight}*/; }
|
||||
.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png)/*{iconsError}*/; }
|
||||
|
||||
/* positioning */
|
||||
.ui-icon-carat-1-n { background-position: 0 0; }
|
||||
.ui-icon-carat-1-ne { background-position: -16px 0; }
|
||||
.ui-icon-carat-1-e { background-position: -32px 0; }
|
||||
.ui-icon-carat-1-se { background-position: -48px 0; }
|
||||
.ui-icon-carat-1-s { background-position: -64px 0; }
|
||||
.ui-icon-carat-1-sw { background-position: -80px 0; }
|
||||
.ui-icon-carat-1-w { background-position: -96px 0; }
|
||||
.ui-icon-carat-1-nw { background-position: -112px 0; }
|
||||
.ui-icon-carat-2-n-s { background-position: -128px 0; }
|
||||
.ui-icon-carat-2-e-w { background-position: -144px 0; }
|
||||
.ui-icon-triangle-1-n { background-position: 0 -16px; }
|
||||
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
|
||||
.ui-icon-triangle-1-e { background-position: -32px -16px; }
|
||||
.ui-icon-triangle-1-se { background-position: -48px -16px; }
|
||||
.ui-icon-triangle-1-s { background-position: -64px -16px; }
|
||||
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
|
||||
.ui-icon-triangle-1-w { background-position: -96px -16px; }
|
||||
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
|
||||
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
|
||||
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
|
||||
.ui-icon-arrow-1-n { background-position: 0 -32px; }
|
||||
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
|
||||
.ui-icon-arrow-1-e { background-position: -32px -32px; }
|
||||
.ui-icon-arrow-1-se { background-position: -48px -32px; }
|
||||
.ui-icon-arrow-1-s { background-position: -64px -32px; }
|
||||
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
|
||||
.ui-icon-arrow-1-w { background-position: -96px -32px; }
|
||||
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
|
||||
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
|
||||
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
|
||||
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
|
||||
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
|
||||
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
|
||||
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
|
||||
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
|
||||
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
|
||||
.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
|
||||
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
|
||||
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
|
||||
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
|
||||
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
|
||||
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
|
||||
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
|
||||
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
|
||||
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
|
||||
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
|
||||
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
|
||||
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
|
||||
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
|
||||
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
|
||||
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
|
||||
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
|
||||
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
|
||||
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
|
||||
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
|
||||
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
|
||||
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
|
||||
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
|
||||
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
|
||||
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
|
||||
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
|
||||
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
|
||||
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
|
||||
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
|
||||
.ui-icon-arrow-4 { background-position: 0 -80px; }
|
||||
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
|
||||
.ui-icon-extlink { background-position: -32px -80px; }
|
||||
.ui-icon-newwin { background-position: -48px -80px; }
|
||||
.ui-icon-refresh { background-position: -64px -80px; }
|
||||
.ui-icon-shuffle { background-position: -80px -80px; }
|
||||
.ui-icon-transfer-e-w { background-position: -96px -80px; }
|
||||
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
|
||||
.ui-icon-folder-collapsed { background-position: 0 -96px; }
|
||||
.ui-icon-folder-open { background-position: -16px -96px; }
|
||||
.ui-icon-document { background-position: -32px -96px; }
|
||||
.ui-icon-document-b { background-position: -48px -96px; }
|
||||
.ui-icon-note { background-position: -64px -96px; }
|
||||
.ui-icon-mail-closed { background-position: -80px -96px; }
|
||||
.ui-icon-mail-open { background-position: -96px -96px; }
|
||||
.ui-icon-suitcase { background-position: -112px -96px; }
|
||||
.ui-icon-comment { background-position: -128px -96px; }
|
||||
.ui-icon-person { background-position: -144px -96px; }
|
||||
.ui-icon-print { background-position: -160px -96px; }
|
||||
.ui-icon-trash { background-position: -176px -96px; }
|
||||
.ui-icon-locked { background-position: -192px -96px; }
|
||||
.ui-icon-unlocked { background-position: -208px -96px; }
|
||||
.ui-icon-bookmark { background-position: -224px -96px; }
|
||||
.ui-icon-tag { background-position: -240px -96px; }
|
||||
.ui-icon-home { background-position: 0 -112px; }
|
||||
.ui-icon-flag { background-position: -16px -112px; }
|
||||
.ui-icon-calendar { background-position: -32px -112px; }
|
||||
.ui-icon-cart { background-position: -48px -112px; }
|
||||
.ui-icon-pencil { background-position: -64px -112px; }
|
||||
.ui-icon-clock { background-position: -80px -112px; }
|
||||
.ui-icon-disk { background-position: -96px -112px; }
|
||||
.ui-icon-calculator { background-position: -112px -112px; }
|
||||
.ui-icon-zoomin { background-position: -128px -112px; }
|
||||
.ui-icon-zoomout { background-position: -144px -112px; }
|
||||
.ui-icon-search { background-position: -160px -112px; }
|
||||
.ui-icon-wrench { background-position: -176px -112px; }
|
||||
.ui-icon-gear { background-position: -192px -112px; }
|
||||
.ui-icon-heart { background-position: -208px -112px; }
|
||||
.ui-icon-star { background-position: -224px -112px; }
|
||||
.ui-icon-link { background-position: -240px -112px; }
|
||||
.ui-icon-cancel { background-position: 0 -128px; }
|
||||
.ui-icon-plus { background-position: -16px -128px; }
|
||||
.ui-icon-plusthick { background-position: -32px -128px; }
|
||||
.ui-icon-minus { background-position: -48px -128px; }
|
||||
.ui-icon-minusthick { background-position: -64px -128px; }
|
||||
.ui-icon-close { background-position: -80px -128px; }
|
||||
.ui-icon-closethick { background-position: -96px -128px; }
|
||||
.ui-icon-key { background-position: -112px -128px; }
|
||||
.ui-icon-lightbulb { background-position: -128px -128px; }
|
||||
.ui-icon-scissors { background-position: -144px -128px; }
|
||||
.ui-icon-clipboard { background-position: -160px -128px; }
|
||||
.ui-icon-copy { background-position: -176px -128px; }
|
||||
.ui-icon-contact { background-position: -192px -128px; }
|
||||
.ui-icon-image { background-position: -208px -128px; }
|
||||
.ui-icon-video { background-position: -224px -128px; }
|
||||
.ui-icon-script { background-position: -240px -128px; }
|
||||
.ui-icon-alert { background-position: 0 -144px; }
|
||||
.ui-icon-info { background-position: -16px -144px; }
|
||||
.ui-icon-notice { background-position: -32px -144px; }
|
||||
.ui-icon-help { background-position: -48px -144px; }
|
||||
.ui-icon-check { background-position: -64px -144px; }
|
||||
.ui-icon-bullet { background-position: -80px -144px; }
|
||||
.ui-icon-radio-off { background-position: -96px -144px; }
|
||||
.ui-icon-radio-on { background-position: -112px -144px; }
|
||||
.ui-icon-pin-w { background-position: -128px -144px; }
|
||||
.ui-icon-pin-s { background-position: -144px -144px; }
|
||||
.ui-icon-play { background-position: 0 -160px; }
|
||||
.ui-icon-pause { background-position: -16px -160px; }
|
||||
.ui-icon-seek-next { background-position: -32px -160px; }
|
||||
.ui-icon-seek-prev { background-position: -48px -160px; }
|
||||
.ui-icon-seek-end { background-position: -64px -160px; }
|
||||
.ui-icon-seek-first { background-position: -80px -160px; }
|
||||
.ui-icon-stop { background-position: -96px -160px; }
|
||||
.ui-icon-eject { background-position: -112px -160px; }
|
||||
.ui-icon-volume-off { background-position: -128px -160px; }
|
||||
.ui-icon-volume-on { background-position: -144px -160px; }
|
||||
.ui-icon-power { background-position: 0 -176px; }
|
||||
.ui-icon-signal-diag { background-position: -16px -176px; }
|
||||
.ui-icon-signal { background-position: -32px -176px; }
|
||||
.ui-icon-battery-0 { background-position: -48px -176px; }
|
||||
.ui-icon-battery-1 { background-position: -64px -176px; }
|
||||
.ui-icon-battery-2 { background-position: -80px -176px; }
|
||||
.ui-icon-battery-3 { background-position: -96px -176px; }
|
||||
.ui-icon-circle-plus { background-position: 0 -192px; }
|
||||
.ui-icon-circle-minus { background-position: -16px -192px; }
|
||||
.ui-icon-circle-close { background-position: -32px -192px; }
|
||||
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
|
||||
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
|
||||
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
|
||||
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
|
||||
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
|
||||
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
|
||||
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
|
||||
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
|
||||
.ui-icon-circle-zoomin { background-position: -176px -192px; }
|
||||
.ui-icon-circle-zoomout { background-position: -192px -192px; }
|
||||
.ui-icon-circle-check { background-position: -208px -192px; }
|
||||
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
|
||||
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
|
||||
.ui-icon-circlesmall-close { background-position: -32px -208px; }
|
||||
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
|
||||
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
|
||||
.ui-icon-squaresmall-close { background-position: -80px -208px; }
|
||||
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
|
||||
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
|
||||
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
|
||||
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
|
||||
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
|
||||
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
|
||||
|
||||
|
||||
/* Misc visuals
|
||||
----------------------------------*/
|
||||
|
||||
/* Corner radius */
|
||||
.ui-corner-tl { -moz-border-radius-topleft: 4px/*{cornerRadius}*/; -webkit-border-top-left-radius: 4px/*{cornerRadius}*/; }
|
||||
.ui-corner-tr { -moz-border-radius-topright: 4px/*{cornerRadius}*/; -webkit-border-top-right-radius: 4px/*{cornerRadius}*/; }
|
||||
.ui-corner-bl { -moz-border-radius-bottomleft: 4px/*{cornerRadius}*/; -webkit-border-bottom-left-radius: 4px/*{cornerRadius}*/; }
|
||||
.ui-corner-br { -moz-border-radius-bottomright: 4px/*{cornerRadius}*/; -webkit-border-bottom-right-radius: 4px/*{cornerRadius}*/; }
|
||||
.ui-corner-top { -moz-border-radius-topleft: 4px/*{cornerRadius}*/; -webkit-border-top-left-radius: 4px/*{cornerRadius}*/; -moz-border-radius-topright: 4px/*{cornerRadius}*/; -webkit-border-top-right-radius: 4px/*{cornerRadius}*/; }
|
||||
.ui-corner-bottom { -moz-border-radius-bottomleft: 4px/*{cornerRadius}*/; -webkit-border-bottom-left-radius: 4px/*{cornerRadius}*/; -moz-border-radius-bottomright: 4px/*{cornerRadius}*/; -webkit-border-bottom-right-radius: 4px/*{cornerRadius}*/; }
|
||||
.ui-corner-right { -moz-border-radius-topright: 4px/*{cornerRadius}*/; -webkit-border-top-right-radius: 4px/*{cornerRadius}*/; -moz-border-radius-bottomright: 4px/*{cornerRadius}*/; -webkit-border-bottom-right-radius: 4px/*{cornerRadius}*/; }
|
||||
.ui-corner-left { -moz-border-radius-topleft: 4px/*{cornerRadius}*/; -webkit-border-top-left-radius: 4px/*{cornerRadius}*/; -moz-border-radius-bottomleft: 4px/*{cornerRadius}*/; -webkit-border-bottom-left-radius: 4px/*{cornerRadius}*/; }
|
||||
.ui-corner-all { -moz-border-radius: 0px/*{cornerRadius}*/; -webkit-border-radius: 0px/*{cornerRadius}*/; }
|
||||
|
||||
/* Overlays */
|
||||
.ui-widget-overlay { background: #aaaaaa/*{bgColorOverlay}*/ none/*{bgImgUrlOverlay}*/ 0/*{bgOverlayXPos}*/ 0/*{bgOverlayYPos}*/ repeat-x/*{bgOverlayRepeat}*/; opacity: .3;filter:Alpha(Opacity=30)/*{opacityOverlay}*/; }
|
||||
.ui-widget-shadow { margin: -4px/*{offsetTopShadow}*/ 0 0 -4px/*{offsetLeftShadow}*/; padding: 4px/*{thicknessShadow}*/; background: #aaaaaa/*{bgColorShadow}*/ none/*{bgImgUrlShadow}*/ 0/*{bgShadowXPos}*/ 0/*{bgShadowYPos}*/ repeat-x/*{bgShadowRepeat}*/; opacity: .35;filter:Alpha(Opacity=35)/*{opacityShadow}*/; -moz-border-radius: 4px/*{cornerRadiusShadow}*/; -webkit-border-radius: 4px/*{cornerRadiusShadow}*/; }
|
||||
24
接口说明/京西管理后台PC端/resources/css/reset.css
Normal file
@@ -0,0 +1,24 @@
|
||||
html,body,div,span,
|
||||
applet,object,iframe,
|
||||
h1,h2,h3,h4,h5,h6,p,blockquote,pre,
|
||||
a,abbr,acronym,address,big,cite,code,
|
||||
del,dfn,em,font,img,ins,kbd,q,s,samp,
|
||||
small,strike,strong,sub,sup,tt,var,
|
||||
dd,dl,dt,li,ol,ul,
|
||||
fieldset,form,label,legend,
|
||||
table,caption,tbody,tfoot,thead,tr,th,td {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: 0;
|
||||
}
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
border-spacing: 0;
|
||||
}
|
||||
ol,ul {
|
||||
list-style: none;
|
||||
}
|
||||
q:before,q:after,
|
||||
blockquote:before,blockquote:after {
|
||||
content: "";
|
||||
}
|
||||
60
接口说明/京西管理后台PC端/resources/expand.html
Normal file
@@ -0,0 +1,60 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
<link type="text/css" href="css/default.css" rel="Stylesheet" />
|
||||
<script type="text/javascript" src="scripts/jquery-1.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="scripts/messagecenter.js"></script>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
$(document).ready(function () {
|
||||
$axure.messageCenter.addMessageListener(messageCenter_message);
|
||||
function messageCenter_message(message, data) {
|
||||
if(message == 'collapseFrameOnLoad') {
|
||||
setTimeout(function() {
|
||||
$('#maximizePanel').animate({
|
||||
top:'-' + maxPanelHeight + 'px'
|
||||
}, 300);
|
||||
}, 2000);
|
||||
}
|
||||
}
|
||||
$axure.messageCenter.postMessage('getCollapseFrameOnLoad');
|
||||
|
||||
if(MOBILE_DEVICE) {
|
||||
$('#maximizePanel').height('45px');
|
||||
}
|
||||
var maxPanelHeight = $('#maximizePanel').height();
|
||||
|
||||
$('#maximizePanel').click(function () {
|
||||
$(this).removeClass('maximizePanelOver');
|
||||
$axure.messageCenter.postMessage('expandFrame');
|
||||
});
|
||||
|
||||
if(!MOBILE_DEVICE) {
|
||||
$('#maximizePanel').mouseenter(function() {
|
||||
$(this).addClass('maximizePanelOver');
|
||||
});
|
||||
$('#maximizePanel').mouseout(function() {
|
||||
if($(this).hasClass('maximizePanelOver')) {
|
||||
$(this).animate({
|
||||
top:'-' + maxPanelHeight + 'px'
|
||||
}, 300);
|
||||
}
|
||||
$(this).removeClass('maximizePanelOver');
|
||||
});
|
||||
$('#maximizePanelOver').mouseenter(function() {
|
||||
$('#maximizePanel').animate({
|
||||
top:'0px'
|
||||
}, 100);
|
||||
});
|
||||
}
|
||||
});
|
||||
--></script>
|
||||
</head>
|
||||
<body style="background-color: transparent;">
|
||||
<div id="maximizePanelOver">
|
||||
<div id="maximizePanel" class="maximizePanel" title="Expand">
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
BIN
接口说明/京西管理后台PC端/resources/images/259_close_12rollover1.png
Normal file
|
After Width: | Height: | Size: 3.3 KiB |
BIN
接口说明/京西管理后台PC端/resources/images/259_close_12rollover2.png
Normal file
|
After Width: | Height: | Size: 3.3 KiB |
BIN
接口说明/京西管理后台PC端/resources/images/260_collapse_12rollover1.png
Normal file
|
After Width: | Height: | Size: 2.7 KiB |
BIN
接口说明/京西管理后台PC端/resources/images/260_collapse_12rollover2.png
Normal file
|
After Width: | Height: | Size: 2.7 KiB |
BIN
接口说明/京西管理后台PC端/resources/images/261_expand_12rollover1.png
Normal file
|
After Width: | Height: | Size: 2.8 KiB |
BIN
接口说明/京西管理后台PC端/resources/images/261_expand_12rollover2.png
Normal file
|
After Width: | Height: | Size: 2.8 KiB |
BIN
接口说明/京西管理后台PC端/resources/images/close.png
Normal file
|
After Width: | Height: | Size: 279 B |
8
接口说明/京西管理后台PC端/resources/images/close.svg
Normal file
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg width="18" height="10" viewBox="0 0 18 10" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
|
||||
<g id="Page-1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
|
||||
<g id="close" sketch:type="MSArtboardGroup" fill="#ffffff">
|
||||
<path d="M8.67067845,9.27101296 L8.65428726,9.28839318 L8.03983472,8.71618141 L0.614452539,1.80125987 L0,1.22904809 L1.15167591,0.00788171237 L1.76612845,0.580093485 L8.66273008,7.00258569 L15.5677952,0.572211772 L16.1822478,0 L17.3339237,1.22116638 L16.7194712,1.79337815 L9.29408898,8.70829969 L8.67963644,9.28051147 L8.67067845,9.27101296 Z" id="Shape" sketch:type="MSShapeGroup"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 748 B |
BIN
接口说明/京西管理后台PC端/resources/images/close_hover.png
Normal file
|
After Width: | Height: | Size: 443 B |
8
接口说明/京西管理后台PC端/resources/images/close_hover.svg
Normal file
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg width="19" height="10" viewBox="0 0 19 10" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
|
||||
<g id="Page-1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
|
||||
<g id="close_hover" sketch:type="MSArtboardGroup" transform="translate(0.667847, 0.000000)" fill="#8f949a">
|
||||
<path d="M8.67067845,9.27101296 L8.65428726,9.28839318 L8.03983472,8.71618141 L0.614452539,1.80125987 L0,1.22904809 L1.15167591,0.00788171237 L1.76612845,0.580093485 L8.66273008,7.00258569 L15.5677952,0.572211772 L16.1822478,0 L17.3339237,1.22116638 L16.7194712,1.79337815 L9.29408898,8.70829969 L8.67963644,9.28051147 L8.67067845,9.27101296 Z" id="Shape" sketch:type="MSShapeGroup"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 796 B |
BIN
接口说明/京西管理后台PC端/resources/images/divider.png
Normal file
|
After Width: | Height: | Size: 110 B |
13
接口说明/京西管理后台PC端/resources/images/divider.svg
Normal file
@@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg width="58" height="2" viewBox="0 0 58 2" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
|
||||
<defs>
|
||||
<path id="path-1" d="M245.5,521 L305.5,521" stroke-linejoin="round" stroke="#bababa" stroke-dasharray="1 8" stroke-width="2" stroke-linecap="round"/>
|
||||
</defs>
|
||||
<g id="Axshare---Web-View" fill="none" fill-rule="evenodd" sketch:type="MSPage">
|
||||
<g id="Share-Page-Notes-Copy" sketch:type="MSArtboardGroup" transform="translate(-244.000000, -520.000000)">
|
||||
<g id="divider">
|
||||
<use xlink:href="#path-1"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 691 B |
BIN
接口说明/京西管理后台PC端/resources/images/expand.png
Normal file
|
After Width: | Height: | Size: 281 B |
8
接口说明/京西管理后台PC端/resources/images/expand.svg
Normal file
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg width="18" height="10" viewBox="0 0 18 10" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
|
||||
<g id="Page-1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
|
||||
<g id="expand" sketch:type="MSArtboardGroup" transform="translate(0.333924, 0.000000)" fill="#ffffff">
|
||||
<path d="M8.67067845,9.27101296 L8.65428726,9.28839318 L8.03983472,8.71618141 L0.614452539,1.80125987 L0,1.22904809 L1.15167591,0.00788171237 L1.76612845,0.580093485 L8.66273008,7.00258569 L15.5677952,0.572211772 L16.1822478,0 L17.3339237,1.22116638 L16.7194712,1.79337815 L9.29408898,8.70829969 L8.67963644,9.28051147 L8.67067845,9.27101296 Z" id="Shape" sketch:type="MSShapeGroup" transform="translate(8.666962, 4.644197) scale(1, -1) translate(-8.666962, -4.644197) "/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 879 B |
BIN
接口说明/京西管理后台PC端/resources/images/expand_hover.png
Normal file
|
After Width: | Height: | Size: 438 B |
8
接口说明/京西管理后台PC端/resources/images/expand_hover.svg
Normal file
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg width="18" height="10" viewBox="0 0 18 10" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
|
||||
<g id="Page-1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
|
||||
<g id="expand_hover" sketch:type="MSArtboardGroup" transform="translate(0.001771, 0.000000)" fill="#8f949a">
|
||||
<path d="M8.67067845,9.27101296 L8.65428726,9.28839318 L8.03983472,8.71618141 L0.614452539,1.80125987 L0,1.22904809 L1.15167591,0.00788171237 L1.76612845,0.580093485 L8.66273008,7.00258569 L15.5677952,0.572211772 L16.1822478,0 L17.3339237,1.22116638 L16.7194712,1.79337815 L9.29408898,8.70829969 L8.67963644,9.28051147 L8.67067845,9.27101296 Z" id="Shape" sketch:type="MSShapeGroup" transform="translate(8.666962, 4.644197) scale(1, -1) translate(-8.666962, -4.644197) "/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 885 B |
17
接口说明/京西管理后台PC端/resources/images/images.html
Normal file
@@ -0,0 +1,17 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
</head>
|
||||
<body>
|
||||
<p>
|
||||
<img border="0" src="transparent.gif" width="1" height="1">
|
||||
<img border="0" src="259_close_12rollover1.png" width="1" height="1">
|
||||
<img border="0" src="259_close_12rollover2.png" width="1" height="1">
|
||||
<img border="0" src="260_collapse_12rollover1.png" width="1" height="1">
|
||||
<img border="0" src="260_collapse_12rollover2.png" width="1" height="1">
|
||||
<img border="0" src="261_expand_12rollover1.png" width="1" height="1">
|
||||
<img border="0" src="261_expand_12rollover2.png" width="1" height="1">
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
BIN
接口说明/京西管理后台PC端/resources/images/transparent.gif
Normal file
|
After Width: | Height: | Size: 43 B |
24
接口说明/京西管理后台PC端/resources/reload.html
Normal file
@@ -0,0 +1,24 @@
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<script language="javascript">
|
||||
function getUrl() {
|
||||
var query = window.location.hash.substring(1);
|
||||
var vars = query.split("&&&");
|
||||
for (var i=0;i<vars.length;i++) {
|
||||
var url = vars[i];
|
||||
return decodeURI(url).replace("html%23","html#");
|
||||
}
|
||||
}
|
||||
|
||||
var rel = '../';
|
||||
var url = getUrl();
|
||||
if (url.indexOf(":") > 0 && url.indexOf(":") < 10) rel = '';
|
||||
self.location.href = rel + url;
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
4
接口说明/京西管理后台PC端/resources/scripts/jquery-1.7.1.min.js
vendored
Normal file
233
接口说明/京西管理后台PC端/resources/scripts/jquery-ui-1.8.10.custom.min.js
vendored
Normal file
@@ -0,0 +1,233 @@
|
||||
/*!
|
||||
* jQuery UI 1.8.10
|
||||
*
|
||||
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
||||
* Dual licensed under the MIT or GPL Version 2 licenses.
|
||||
* http://jquery.org/license
|
||||
*
|
||||
* http://docs.jquery.com/UI
|
||||
*/
|
||||
(function(c,j){function k(a){return!c(a).parents().andSelf().filter(function(){return c.curCSS(this,"visibility")==="hidden"||c.expr.filters.hidden(this)}).length}c.ui=c.ui||{};if(!c.ui.version){c.extend(c.ui,{version:"1.8.10",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,
|
||||
NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});c.fn.extend({_focus:c.fn.focus,focus:function(a,b){return typeof a==="number"?this.each(function(){var d=this;setTimeout(function(){c(d).focus();b&&b.call(d)},a)}):this._focus.apply(this,arguments)},scrollParent:function(){var a;a=c.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?this.parents().filter(function(){return/(relative|absolute|fixed)/.test(c.curCSS(this,
|
||||
"position",1))&&/(auto|scroll)/.test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0):this.parents().filter(function(){return/(auto|scroll)/.test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!a.length?c(document):a},zIndex:function(a){if(a!==j)return this.css("zIndex",a);if(this.length){a=c(this[0]);for(var b;a.length&&a[0]!==document;){b=a.css("position");
|
||||
if(b==="absolute"||b==="relative"||b==="fixed"){b=parseInt(a.css("zIndex"),10);if(!isNaN(b)&&b!==0)return b}a=a.parent()}}return 0},disableSelection:function(){return this.bind((c.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});c.each(["Width","Height"],function(a,b){function d(f,g,l,m){c.each(e,function(){g-=parseFloat(c.curCSS(f,"padding"+this,true))||0;if(l)g-=parseFloat(c.curCSS(f,
|
||||
"border"+this+"Width",true))||0;if(m)g-=parseFloat(c.curCSS(f,"margin"+this,true))||0});return g}var e=b==="Width"?["Left","Right"]:["Top","Bottom"],h=b.toLowerCase(),i={innerWidth:c.fn.innerWidth,innerHeight:c.fn.innerHeight,outerWidth:c.fn.outerWidth,outerHeight:c.fn.outerHeight};c.fn["inner"+b]=function(f){if(f===j)return i["inner"+b].call(this);return this.each(function(){c(this).css(h,d(this,f)+"px")})};c.fn["outer"+b]=function(f,g){if(typeof f!=="number")return i["outer"+b].call(this,f);return this.each(function(){c(this).css(h,
|
||||
d(this,f,true,g)+"px")})}});c.extend(c.expr[":"],{data:function(a,b,d){return!!c.data(a,d[3])},focusable:function(a){var b=a.nodeName.toLowerCase(),d=c.attr(a,"tabindex");if("area"===b){b=a.parentNode;d=b.name;if(!a.href||!d||b.nodeName.toLowerCase()!=="map")return false;a=c("img[usemap=#"+d+"]")[0];return!!a&&k(a)}return(/input|select|textarea|button|object/.test(b)?!a.disabled:"a"==b?a.href||!isNaN(d):!isNaN(d))&&k(a)},tabbable:function(a){var b=c.attr(a,"tabindex");return(isNaN(b)||b>=0)&&c(a).is(":focusable")}});
|
||||
c(function(){var a=document.body,b=a.appendChild(b=document.createElement("div"));c.extend(b.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});c.support.minHeight=b.offsetHeight===100;c.support.selectstart="onselectstart"in b;a.removeChild(b).style.display="none"});c.extend(c.ui,{plugin:{add:function(a,b,d){a=c.ui[a].prototype;for(var e in d){a.plugins[e]=a.plugins[e]||[];a.plugins[e].push([b,d[e]])}},call:function(a,b,d){if((b=a.plugins[b])&&a.element[0].parentNode)for(var e=0;e<b.length;e++)a.options[b[e][0]]&&
|
||||
b[e][1].apply(a.element,d)}},contains:function(a,b){return document.compareDocumentPosition?a.compareDocumentPosition(b)&16:a!==b&&a.contains(b)},hasScroll:function(a,b){if(c(a).css("overflow")==="hidden")return false;b=b&&b==="left"?"scrollLeft":"scrollTop";var d=false;if(a[b]>0)return true;a[b]=1;d=a[b]>0;a[b]=0;return d},isOverAxis:function(a,b,d){return a>b&&a<b+d},isOver:function(a,b,d,e,h,i){return c.ui.isOverAxis(a,d,h)&&c.ui.isOverAxis(b,e,i)}})}})(jQuery);
|
||||
;/*!
|
||||
* jQuery UI Widget 1.8.10
|
||||
*
|
||||
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
||||
* Dual licensed under the MIT or GPL Version 2 licenses.
|
||||
* http://jquery.org/license
|
||||
*
|
||||
* http://docs.jquery.com/UI/Widget
|
||||
*/
|
||||
(function(b,j){if(b.cleanData){var k=b.cleanData;b.cleanData=function(a){for(var c=0,d;(d=a[c])!=null;c++)b(d).triggerHandler("remove");k(a)}}else{var l=b.fn.remove;b.fn.remove=function(a,c){return this.each(function(){if(!c)if(!a||b.filter(a,[this]).length)b("*",this).add([this]).each(function(){b(this).triggerHandler("remove")});return l.call(b(this),a,c)})}}b.widget=function(a,c,d){var e=a.split(".")[0],f;a=a.split(".")[1];f=e+"-"+a;if(!d){d=c;c=b.Widget}b.expr[":"][f]=function(h){return!!b.data(h,
|
||||
a)};b[e]=b[e]||{};b[e][a]=function(h,g){arguments.length&&this._createWidget(h,g)};c=new c;c.options=b.extend(true,{},c.options);b[e][a].prototype=b.extend(true,c,{namespace:e,widgetName:a,widgetEventPrefix:b[e][a].prototype.widgetEventPrefix||a,widgetBaseClass:f},d);b.widget.bridge(a,b[e][a])};b.widget.bridge=function(a,c){b.fn[a]=function(d){var e=typeof d==="string",f=Array.prototype.slice.call(arguments,1),h=this;d=!e&&f.length?b.extend.apply(null,[true,d].concat(f)):d;if(e&&d.charAt(0)==="_")return h;
|
||||
e?this.each(function(){var g=b.data(this,a),i=g&&b.isFunction(g[d])?g[d].apply(g,f):g;if(i!==g&&i!==j){h=i;return false}}):this.each(function(){var g=b.data(this,a);g?g.option(d||{})._init():b.data(this,a,new c(d,this))});return h}};b.Widget=function(a,c){arguments.length&&this._createWidget(a,c)};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(a,c){b.data(c,this.widgetName,this);this.element=b(c);this.options=b.extend(true,{},this.options,
|
||||
this._getCreateOptions(),a);var d=this;this.element.bind("remove."+this.widgetName,function(){d.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},
|
||||
widget:function(){return this.element},option:function(a,c){var d=a;if(arguments.length===0)return b.extend({},this.options);if(typeof a==="string"){if(c===j)return this.options[a];d={};d[a]=c}this._setOptions(d);return this},_setOptions:function(a){var c=this;b.each(a,function(d,e){c._setOption(d,e)});return this},_setOption:function(a,c){this.options[a]=c;if(a==="disabled")this.widget()[c?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",c);return this},
|
||||
enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(a,c,d){var e=this.options[a];c=b.Event(c);c.type=(a===this.widgetEventPrefix?a:this.widgetEventPrefix+a).toLowerCase();d=d||{};if(c.originalEvent){a=b.event.props.length;for(var f;a;){f=b.event.props[--a];c[f]=c.originalEvent[f]}}this.element.trigger(c,d);return!(b.isFunction(e)&&e.call(this.element[0],c,d)===false||c.isDefaultPrevented())}}})(jQuery);
|
||||
;/*!
|
||||
* jQuery UI Mouse 1.8.10
|
||||
*
|
||||
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
||||
* Dual licensed under the MIT or GPL Version 2 licenses.
|
||||
* http://jquery.org/license
|
||||
*
|
||||
* http://docs.jquery.com/UI/Mouse
|
||||
*
|
||||
* Depends:
|
||||
* jquery.ui.widget.js
|
||||
*/
|
||||
(function(c){c.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var a=this;this.element.bind("mousedown."+this.widgetName,function(b){return a._mouseDown(b)}).bind("click."+this.widgetName,function(b){if(true===c.data(b.target,a.widgetName+".preventClickEvent")){c.removeData(b.target,a.widgetName+".preventClickEvent");b.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(a){a.originalEvent=
|
||||
a.originalEvent||{};if(!a.originalEvent.mouseHandled){this._mouseStarted&&this._mouseUp(a);this._mouseDownEvent=a;var b=this,e=a.which==1,f=typeof this.options.cancel=="string"?c(a.target).parents().add(a.target).filter(this.options.cancel).length:false;if(!e||f||!this._mouseCapture(a))return true;this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet)this._mouseDelayTimer=setTimeout(function(){b.mouseDelayMet=true},this.options.delay);if(this._mouseDistanceMet(a)&&this._mouseDelayMet(a)){this._mouseStarted=
|
||||
this._mouseStart(a)!==false;if(!this._mouseStarted){a.preventDefault();return true}}this._mouseMoveDelegate=function(d){return b._mouseMove(d)};this._mouseUpDelegate=function(d){return b._mouseUp(d)};c(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);a.preventDefault();return a.originalEvent.mouseHandled=true}},_mouseMove:function(a){if(c.browser.msie&&!(document.documentMode>=9)&&!a.button)return this._mouseUp(a);if(this._mouseStarted){this._mouseDrag(a);
|
||||
return a.preventDefault()}if(this._mouseDistanceMet(a)&&this._mouseDelayMet(a))(this._mouseStarted=this._mouseStart(this._mouseDownEvent,a)!==false)?this._mouseDrag(a):this._mouseUp(a);return!this._mouseStarted},_mouseUp:function(a){c(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;a.target==this._mouseDownEvent.target&&c.data(a.target,this.widgetName+".preventClickEvent",
|
||||
true);this._mouseStop(a)}return false},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return true}})})(jQuery);
|
||||
;/*
|
||||
* jQuery UI Position 1.8.10
|
||||
*
|
||||
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
||||
* Dual licensed under the MIT or GPL Version 2 licenses.
|
||||
* http://jquery.org/license
|
||||
*
|
||||
* http://docs.jquery.com/UI/Position
|
||||
*/
|
||||
(function(c){c.ui=c.ui||{};var n=/left|center|right/,o=/top|center|bottom/,t=c.fn.position,u=c.fn.offset;c.fn.position=function(b){if(!b||!b.of)return t.apply(this,arguments);b=c.extend({},b);var a=c(b.of),d=a[0],g=(b.collision||"flip").split(" "),e=b.offset?b.offset.split(" "):[0,0],h,k,j;if(d.nodeType===9){h=a.width();k=a.height();j={top:0,left:0}}else if(d.setTimeout){h=a.width();k=a.height();j={top:a.scrollTop(),left:a.scrollLeft()}}else if(d.preventDefault){b.at="left top";h=k=0;j={top:b.of.pageY,
|
||||
left:b.of.pageX}}else{h=a.outerWidth();k=a.outerHeight();j=a.offset()}c.each(["my","at"],function(){var f=(b[this]||"").split(" ");if(f.length===1)f=n.test(f[0])?f.concat(["center"]):o.test(f[0])?["center"].concat(f):["center","center"];f[0]=n.test(f[0])?f[0]:"center";f[1]=o.test(f[1])?f[1]:"center";b[this]=f});if(g.length===1)g[1]=g[0];e[0]=parseInt(e[0],10)||0;if(e.length===1)e[1]=e[0];e[1]=parseInt(e[1],10)||0;if(b.at[0]==="right")j.left+=h;else if(b.at[0]==="center")j.left+=h/2;if(b.at[1]==="bottom")j.top+=
|
||||
k;else if(b.at[1]==="center")j.top+=k/2;j.left+=e[0];j.top+=e[1];return this.each(function(){var f=c(this),l=f.outerWidth(),m=f.outerHeight(),p=parseInt(c.curCSS(this,"marginLeft",true))||0,q=parseInt(c.curCSS(this,"marginTop",true))||0,v=l+p+(parseInt(c.curCSS(this,"marginRight",true))||0),w=m+q+(parseInt(c.curCSS(this,"marginBottom",true))||0),i=c.extend({},j),r;if(b.my[0]==="right")i.left-=l;else if(b.my[0]==="center")i.left-=l/2;if(b.my[1]==="bottom")i.top-=m;else if(b.my[1]==="center")i.top-=
|
||||
m/2;i.left=Math.round(i.left);i.top=Math.round(i.top);r={left:i.left-p,top:i.top-q};c.each(["left","top"],function(s,x){c.ui.position[g[s]]&&c.ui.position[g[s]][x](i,{targetWidth:h,targetHeight:k,elemWidth:l,elemHeight:m,collisionPosition:r,collisionWidth:v,collisionHeight:w,offset:e,my:b.my,at:b.at})});c.fn.bgiframe&&f.bgiframe();f.offset(c.extend(i,{using:b.using}))})};c.ui.position={fit:{left:function(b,a){var d=c(window);d=a.collisionPosition.left+a.collisionWidth-d.width()-d.scrollLeft();b.left=
|
||||
d>0?b.left-d:Math.max(b.left-a.collisionPosition.left,b.left)},top:function(b,a){var d=c(window);d=a.collisionPosition.top+a.collisionHeight-d.height()-d.scrollTop();b.top=d>0?b.top-d:Math.max(b.top-a.collisionPosition.top,b.top)}},flip:{left:function(b,a){if(a.at[0]!=="center"){var d=c(window);d=a.collisionPosition.left+a.collisionWidth-d.width()-d.scrollLeft();var g=a.my[0]==="left"?-a.elemWidth:a.my[0]==="right"?a.elemWidth:0,e=a.at[0]==="left"?a.targetWidth:-a.targetWidth,h=-2*a.offset[0];b.left+=
|
||||
a.collisionPosition.left<0?g+e+h:d>0?g+e+h:0}},top:function(b,a){if(a.at[1]!=="center"){var d=c(window);d=a.collisionPosition.top+a.collisionHeight-d.height()-d.scrollTop();var g=a.my[1]==="top"?-a.elemHeight:a.my[1]==="bottom"?a.elemHeight:0,e=a.at[1]==="top"?a.targetHeight:-a.targetHeight,h=-2*a.offset[1];b.top+=a.collisionPosition.top<0?g+e+h:d>0?g+e+h:0}}}};if(!c.offset.setOffset){c.offset.setOffset=function(b,a){if(/static/.test(c.curCSS(b,"position")))b.style.position="relative";var d=c(b),
|
||||
g=d.offset(),e=parseInt(c.curCSS(b,"top",true),10)||0,h=parseInt(c.curCSS(b,"left",true),10)||0;g={top:a.top-g.top+e,left:a.left-g.left+h};"using"in a?a.using.call(b,g):d.css(g)};c.fn.offset=function(b){var a=this[0];if(!a||!a.ownerDocument)return null;if(b)return this.each(function(){c.offset.setOffset(this,b)});return u.call(this)}}})(jQuery);
|
||||
;/*
|
||||
* jQuery UI Draggable 1.8.10
|
||||
*
|
||||
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
||||
* Dual licensed under the MIT or GPL Version 2 licenses.
|
||||
* http://jquery.org/license
|
||||
*
|
||||
* http://docs.jquery.com/UI/Draggables
|
||||
*
|
||||
* Depends:
|
||||
* jquery.ui.core.js
|
||||
* jquery.ui.mouse.js
|
||||
* jquery.ui.widget.js
|
||||
*/
|
||||
(function(d){d.widget("ui.draggable",d.ui.mouse,{widgetEventPrefix:"drag",options:{addClasses:true,appendTo:"parent",axis:false,connectToSortable:false,containment:false,cursor:"auto",cursorAt:false,grid:false,handle:false,helper:"original",iframeFix:false,opacity:false,refreshPositions:false,revert:false,revertDuration:500,scope:"default",scroll:true,scrollSensitivity:20,scrollSpeed:20,snap:false,snapMode:"both",snapTolerance:20,stack:false,zIndex:false},_create:function(){if(this.options.helper==
|
||||
"original"&&!/^(?:r|a|f)/.test(this.element.css("position")))this.element[0].style.position="relative";this.options.addClasses&&this.element.addClass("ui-draggable");this.options.disabled&&this.element.addClass("ui-draggable-disabled");this._mouseInit()},destroy:function(){if(this.element.data("draggable")){this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled");this._mouseDestroy();return this}},_mouseCapture:function(a){var b=
|
||||
this.options;if(this.helper||b.disabled||d(a.target).is(".ui-resizable-handle"))return false;this.handle=this._getHandle(a);if(!this.handle)return false;return true},_mouseStart:function(a){var b=this.options;this.helper=this._createHelper(a);this._cacheHelperProportions();if(d.ui.ddmanager)d.ui.ddmanager.current=this;this._cacheMargins();this.cssPosition=this.helper.css("position");this.scrollParent=this.helper.scrollParent();this.offset=this.positionAbs=this.element.offset();this.offset={top:this.offset.top-
|
||||
this.margins.top,left:this.offset.left-this.margins.left};d.extend(this.offset,{click:{left:a.pageX-this.offset.left,top:a.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this.position=this._generatePosition(a);this.originalPageX=a.pageX;this.originalPageY=a.pageY;b.cursorAt&&this._adjustOffsetFromHelper(b.cursorAt);b.containment&&this._setContainment();if(this._trigger("start",a)===false){this._clear();return false}this._cacheHelperProportions();
|
||||
d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,a);this.helper.addClass("ui-draggable-dragging");this._mouseDrag(a,true);return true},_mouseDrag:function(a,b){this.position=this._generatePosition(a);this.positionAbs=this._convertPositionTo("absolute");if(!b){b=this._uiHash();if(this._trigger("drag",a,b)===false){this._mouseUp({});return false}this.position=b.position}if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||
|
||||
this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";d.ui.ddmanager&&d.ui.ddmanager.drag(this,a);return false},_mouseStop:function(a){var b=false;if(d.ui.ddmanager&&!this.options.dropBehaviour)b=d.ui.ddmanager.drop(this,a);if(this.dropped){b=this.dropped;this.dropped=false}if((!this.element[0]||!this.element[0].parentNode)&&this.options.helper=="original")return false;if(this.options.revert=="invalid"&&!b||this.options.revert=="valid"&&b||this.options.revert===true||d.isFunction(this.options.revert)&&
|
||||
this.options.revert.call(this.element,b)){var c=this;d(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){c._trigger("stop",a)!==false&&c._clear()})}else this._trigger("stop",a)!==false&&this._clear();return false},cancel:function(){this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear();return this},_getHandle:function(a){var b=!this.options.handle||!d(this.options.handle,this.element).length?true:false;d(this.options.handle,this.element).find("*").andSelf().each(function(){if(this==
|
||||
a.target)b=true});return b},_createHelper:function(a){var b=this.options;a=d.isFunction(b.helper)?d(b.helper.apply(this.element[0],[a])):b.helper=="clone"?this.element.clone():this.element;a.parents("body").length||a.appendTo(b.appendTo=="parent"?this.element[0].parentNode:b.appendTo);a[0]!=this.element[0]&&!/(fixed|absolute)/.test(a.css("position"))&&a.css("position","absolute");return a},_adjustOffsetFromHelper:function(a){if(typeof a=="string")a=a.split(" ");if(d.isArray(a))a={left:+a[0],top:+a[1]||
|
||||
0};if("left"in a)this.offset.click.left=a.left+this.margins.left;if("right"in a)this.offset.click.left=this.helperProportions.width-a.right+this.margins.left;if("top"in a)this.offset.click.top=a.top+this.margins.top;if("bottom"in a)this.offset.click.top=this.helperProportions.height-a.bottom+this.margins.top},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var a=this.offsetParent.offset();if(this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],
|
||||
this.offsetParent[0])){a.left+=this.scrollParent.scrollLeft();a.top+=this.scrollParent.scrollTop()}if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&d.browser.msie)a={top:0,left:0};return{top:a.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:a.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var a=this.element.position();return{top:a.top-
|
||||
(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:a.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}else return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var a=this.options;if(a.containment==
|
||||
"parent")a.containment=this.helper[0].parentNode;if(a.containment=="document"||a.containment=="window")this.containment=[(a.containment=="document"?0:d(window).scrollLeft())-this.offset.relative.left-this.offset.parent.left,(a.containment=="document"?0:d(window).scrollTop())-this.offset.relative.top-this.offset.parent.top,(a.containment=="document"?0:d(window).scrollLeft())+d(a.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(a.containment=="document"?
|
||||
0:d(window).scrollTop())+(d(a.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(a.containment)&&a.containment.constructor!=Array){var b=d(a.containment)[0];if(b){a=d(a.containment).offset();var c=d(b).css("overflow")!="hidden";this.containment=[a.left+(parseInt(d(b).css("borderLeftWidth"),10)||0)+(parseInt(d(b).css("paddingLeft"),10)||0)-this.margins.left,a.top+(parseInt(d(b).css("borderTopWidth"),
|
||||
10)||0)+(parseInt(d(b).css("paddingTop"),10)||0)-this.margins.top,a.left+(c?Math.max(b.scrollWidth,b.offsetWidth):b.offsetWidth)-(parseInt(d(b).css("borderLeftWidth"),10)||0)-(parseInt(d(b).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,a.top+(c?Math.max(b.scrollHeight,b.offsetHeight):b.offsetHeight)-(parseInt(d(b).css("borderTopWidth"),10)||0)-(parseInt(d(b).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top]}}else if(a.containment.constructor==
|
||||
Array)this.containment=a.containment},_convertPositionTo:function(a,b){if(!b)b=this.position;a=a=="absolute"?1:-1;var c=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,f=/(html|body)/i.test(c[0].tagName);return{top:b.top+this.offset.relative.top*a+this.offset.parent.top*a-(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():
|
||||
f?0:c.scrollTop())*a),left:b.left+this.offset.relative.left*a+this.offset.parent.left*a-(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():f?0:c.scrollLeft())*a)}},_generatePosition:function(a){var b=this.options,c=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,f=/(html|body)/i.test(c[0].tagName),e=a.pageX,g=a.pageY;
|
||||
if(this.originalPosition){if(this.containment){if(a.pageX-this.offset.click.left<this.containment[0])e=this.containment[0]+this.offset.click.left;if(a.pageY-this.offset.click.top<this.containment[1])g=this.containment[1]+this.offset.click.top;if(a.pageX-this.offset.click.left>this.containment[2])e=this.containment[2]+this.offset.click.left;if(a.pageY-this.offset.click.top>this.containment[3])g=this.containment[3]+this.offset.click.top}if(b.grid){g=this.originalPageY+Math.round((g-this.originalPageY)/
|
||||
b.grid[1])*b.grid[1];g=this.containment?!(g-this.offset.click.top<this.containment[1]||g-this.offset.click.top>this.containment[3])?g:!(g-this.offset.click.top<this.containment[1])?g-b.grid[1]:g+b.grid[1]:g;e=this.originalPageX+Math.round((e-this.originalPageX)/b.grid[0])*b.grid[0];e=this.containment?!(e-this.offset.click.left<this.containment[0]||e-this.offset.click.left>this.containment[2])?e:!(e-this.offset.click.left<this.containment[0])?e-b.grid[0]:e+b.grid[0]:e}}return{top:g-this.offset.click.top-
|
||||
this.offset.relative.top-this.offset.parent.top+(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():f?0:c.scrollTop()),left:e-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():f?0:c.scrollLeft())}},_clear:function(){this.helper.removeClass("ui-draggable-dragging");this.helper[0]!=
|
||||
this.element[0]&&!this.cancelHelperRemoval&&this.helper.remove();this.helper=null;this.cancelHelperRemoval=false},_trigger:function(a,b,c){c=c||this._uiHash();d.ui.plugin.call(this,a,[b,c]);if(a=="drag")this.positionAbs=this._convertPositionTo("absolute");return d.Widget.prototype._trigger.call(this,a,b,c)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}});d.extend(d.ui.draggable,{version:"1.8.10"});
|
||||
d.ui.plugin.add("draggable","connectToSortable",{start:function(a,b){var c=d(this).data("draggable"),f=c.options,e=d.extend({},b,{item:c.element});c.sortables=[];d(f.connectToSortable).each(function(){var g=d.data(this,"sortable");if(g&&!g.options.disabled){c.sortables.push({instance:g,shouldRevert:g.options.revert});g._refreshItems();g._trigger("activate",a,e)}})},stop:function(a,b){var c=d(this).data("draggable"),f=d.extend({},b,{item:c.element});d.each(c.sortables,function(){if(this.instance.isOver){this.instance.isOver=
|
||||
0;c.cancelHelperRemoval=true;this.instance.cancelHelperRemoval=false;if(this.shouldRevert)this.instance.options.revert=true;this.instance._mouseStop(a);this.instance.options.helper=this.instance.options._helper;c.options.helper=="original"&&this.instance.currentItem.css({top:"auto",left:"auto"})}else{this.instance.cancelHelperRemoval=false;this.instance._trigger("deactivate",a,f)}})},drag:function(a,b){var c=d(this).data("draggable"),f=this;d.each(c.sortables,function(){this.instance.positionAbs=
|
||||
c.positionAbs;this.instance.helperProportions=c.helperProportions;this.instance.offset.click=c.offset.click;if(this.instance._intersectsWith(this.instance.containerCache)){if(!this.instance.isOver){this.instance.isOver=1;this.instance.currentItem=d(f).clone().appendTo(this.instance.element).data("sortable-item",true);this.instance.options._helper=this.instance.options.helper;this.instance.options.helper=function(){return b.helper[0]};a.target=this.instance.currentItem[0];this.instance._mouseCapture(a,
|
||||
true);this.instance._mouseStart(a,true,true);this.instance.offset.click.top=c.offset.click.top;this.instance.offset.click.left=c.offset.click.left;this.instance.offset.parent.left-=c.offset.parent.left-this.instance.offset.parent.left;this.instance.offset.parent.top-=c.offset.parent.top-this.instance.offset.parent.top;c._trigger("toSortable",a);c.dropped=this.instance.element;c.currentItem=c.element;this.instance.fromOutside=c}this.instance.currentItem&&this.instance._mouseDrag(a)}else if(this.instance.isOver){this.instance.isOver=
|
||||
0;this.instance.cancelHelperRemoval=true;this.instance.options.revert=false;this.instance._trigger("out",a,this.instance._uiHash(this.instance));this.instance._mouseStop(a,true);this.instance.options.helper=this.instance.options._helper;this.instance.currentItem.remove();this.instance.placeholder&&this.instance.placeholder.remove();c._trigger("fromSortable",a);c.dropped=false}})}});d.ui.plugin.add("draggable","cursor",{start:function(){var a=d("body"),b=d(this).data("draggable").options;if(a.css("cursor"))b._cursor=
|
||||
a.css("cursor");a.css("cursor",b.cursor)},stop:function(){var a=d(this).data("draggable").options;a._cursor&&d("body").css("cursor",a._cursor)}});d.ui.plugin.add("draggable","iframeFix",{start:function(){var a=d(this).data("draggable").options;d(a.iframeFix===true?"iframe":a.iframeFix).each(function(){d('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1E3}).css(d(this).offset()).appendTo("body")})},
|
||||
stop:function(){d("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)})}});d.ui.plugin.add("draggable","opacity",{start:function(a,b){a=d(b.helper);b=d(this).data("draggable").options;if(a.css("opacity"))b._opacity=a.css("opacity");a.css("opacity",b.opacity)},stop:function(a,b){a=d(this).data("draggable").options;a._opacity&&d(b.helper).css("opacity",a._opacity)}});d.ui.plugin.add("draggable","scroll",{start:function(){var a=d(this).data("draggable");if(a.scrollParent[0]!=
|
||||
document&&a.scrollParent[0].tagName!="HTML")a.overflowOffset=a.scrollParent.offset()},drag:function(a){var b=d(this).data("draggable"),c=b.options,f=false;if(b.scrollParent[0]!=document&&b.scrollParent[0].tagName!="HTML"){if(!c.axis||c.axis!="x")if(b.overflowOffset.top+b.scrollParent[0].offsetHeight-a.pageY<c.scrollSensitivity)b.scrollParent[0].scrollTop=f=b.scrollParent[0].scrollTop+c.scrollSpeed;else if(a.pageY-b.overflowOffset.top<c.scrollSensitivity)b.scrollParent[0].scrollTop=f=b.scrollParent[0].scrollTop-
|
||||
c.scrollSpeed;if(!c.axis||c.axis!="y")if(b.overflowOffset.left+b.scrollParent[0].offsetWidth-a.pageX<c.scrollSensitivity)b.scrollParent[0].scrollLeft=f=b.scrollParent[0].scrollLeft+c.scrollSpeed;else if(a.pageX-b.overflowOffset.left<c.scrollSensitivity)b.scrollParent[0].scrollLeft=f=b.scrollParent[0].scrollLeft-c.scrollSpeed}else{if(!c.axis||c.axis!="x")if(a.pageY-d(document).scrollTop()<c.scrollSensitivity)f=d(document).scrollTop(d(document).scrollTop()-c.scrollSpeed);else if(d(window).height()-
|
||||
(a.pageY-d(document).scrollTop())<c.scrollSensitivity)f=d(document).scrollTop(d(document).scrollTop()+c.scrollSpeed);if(!c.axis||c.axis!="y")if(a.pageX-d(document).scrollLeft()<c.scrollSensitivity)f=d(document).scrollLeft(d(document).scrollLeft()-c.scrollSpeed);else if(d(window).width()-(a.pageX-d(document).scrollLeft())<c.scrollSensitivity)f=d(document).scrollLeft(d(document).scrollLeft()+c.scrollSpeed)}f!==false&&d.ui.ddmanager&&!c.dropBehaviour&&d.ui.ddmanager.prepareOffsets(b,a)}});d.ui.plugin.add("draggable",
|
||||
"snap",{start:function(){var a=d(this).data("draggable"),b=a.options;a.snapElements=[];d(b.snap.constructor!=String?b.snap.items||":data(draggable)":b.snap).each(function(){var c=d(this),f=c.offset();this!=a.element[0]&&a.snapElements.push({item:this,width:c.outerWidth(),height:c.outerHeight(),top:f.top,left:f.left})})},drag:function(a,b){for(var c=d(this).data("draggable"),f=c.options,e=f.snapTolerance,g=b.offset.left,n=g+c.helperProportions.width,m=b.offset.top,o=m+c.helperProportions.height,h=
|
||||
c.snapElements.length-1;h>=0;h--){var i=c.snapElements[h].left,k=i+c.snapElements[h].width,j=c.snapElements[h].top,l=j+c.snapElements[h].height;if(i-e<g&&g<k+e&&j-e<m&&m<l+e||i-e<g&&g<k+e&&j-e<o&&o<l+e||i-e<n&&n<k+e&&j-e<m&&m<l+e||i-e<n&&n<k+e&&j-e<o&&o<l+e){if(f.snapMode!="inner"){var p=Math.abs(j-o)<=e,q=Math.abs(l-m)<=e,r=Math.abs(i-n)<=e,s=Math.abs(k-g)<=e;if(p)b.position.top=c._convertPositionTo("relative",{top:j-c.helperProportions.height,left:0}).top-c.margins.top;if(q)b.position.top=c._convertPositionTo("relative",
|
||||
{top:l,left:0}).top-c.margins.top;if(r)b.position.left=c._convertPositionTo("relative",{top:0,left:i-c.helperProportions.width}).left-c.margins.left;if(s)b.position.left=c._convertPositionTo("relative",{top:0,left:k}).left-c.margins.left}var t=p||q||r||s;if(f.snapMode!="outer"){p=Math.abs(j-m)<=e;q=Math.abs(l-o)<=e;r=Math.abs(i-g)<=e;s=Math.abs(k-n)<=e;if(p)b.position.top=c._convertPositionTo("relative",{top:j,left:0}).top-c.margins.top;if(q)b.position.top=c._convertPositionTo("relative",{top:l-c.helperProportions.height,
|
||||
left:0}).top-c.margins.top;if(r)b.position.left=c._convertPositionTo("relative",{top:0,left:i}).left-c.margins.left;if(s)b.position.left=c._convertPositionTo("relative",{top:0,left:k-c.helperProportions.width}).left-c.margins.left}if(!c.snapElements[h].snapping&&(p||q||r||s||t))c.options.snap.snap&&c.options.snap.snap.call(c.element,a,d.extend(c._uiHash(),{snapItem:c.snapElements[h].item}));c.snapElements[h].snapping=p||q||r||s||t}else{c.snapElements[h].snapping&&c.options.snap.release&&c.options.snap.release.call(c.element,
|
||||
a,d.extend(c._uiHash(),{snapItem:c.snapElements[h].item}));c.snapElements[h].snapping=false}}}});d.ui.plugin.add("draggable","stack",{start:function(){var a=d(this).data("draggable").options;a=d.makeArray(d(a.stack)).sort(function(c,f){return(parseInt(d(c).css("zIndex"),10)||0)-(parseInt(d(f).css("zIndex"),10)||0)});if(a.length){var b=parseInt(a[0].style.zIndex)||0;d(a).each(function(c){this.style.zIndex=b+c});this[0].style.zIndex=b+a.length}}});d.ui.plugin.add("draggable","zIndex",{start:function(a,
|
||||
b){a=d(b.helper);b=d(this).data("draggable").options;if(a.css("zIndex"))b._zIndex=a.css("zIndex");a.css("zIndex",b.zIndex)},stop:function(a,b){a=d(this).data("draggable").options;a._zIndex&&d(b.helper).css("zIndex",a._zIndex)}})})(jQuery);
|
||||
;/*
|
||||
* jQuery UI Resizable 1.8.10
|
||||
*
|
||||
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
||||
* Dual licensed under the MIT or GPL Version 2 licenses.
|
||||
* http://jquery.org/license
|
||||
*
|
||||
* http://docs.jquery.com/UI/Resizables
|
||||
*
|
||||
* Depends:
|
||||
* jquery.ui.core.js
|
||||
* jquery.ui.mouse.js
|
||||
* jquery.ui.widget.js
|
||||
*/
|
||||
(function(e){e.widget("ui.resizable",e.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1E3},_create:function(){var b=this,a=this.options;this.element.addClass("ui-resizable");e.extend(this,{_aspectRatio:!!a.aspectRatio,aspectRatio:a.aspectRatio,originalElement:this.element,
|
||||
_proportionallyResizeElements:[],_helper:a.helper||a.ghost||a.animate?a.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){/relative/.test(this.element.css("position"))&&e.browser.opera&&this.element.css({position:"relative",top:"auto",left:"auto"});this.element.wrap(e('<div class="ui-wrapper" style="overflow: hidden;"></div>').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),
|
||||
top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=
|
||||
this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=a.handles||(!e(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",
|
||||
nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all")this.handles="n,e,s,w,se,sw,ne,nw";var c=this.handles.split(",");this.handles={};for(var d=0;d<c.length;d++){var f=e.trim(c[d]),g=e('<div class="ui-resizable-handle '+("ui-resizable-"+f)+'"></div>');/sw|se|ne|nw/.test(f)&&g.css({zIndex:++a.zIndex});"se"==f&&g.addClass("ui-icon ui-icon-gripsmall-diagonal-se");this.handles[f]=".ui-resizable-"+f;this.element.append(g)}}this._renderAxis=function(h){h=h||this.element;for(var i in this.handles){if(this.handles[i].constructor==
|
||||
String)this.handles[i]=e(this.handles[i],this.element).show();if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var j=e(this.handles[i],this.element),k=0;k=/sw|ne|nw|se|n|s/.test(i)?j.outerHeight():j.outerWidth();j=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join("");h.css(j,k);this._proportionallyResize()}e(this.handles[i])}};this._renderAxis(this.element);this._handles=e(".ui-resizable-handle",this.element).disableSelection();
|
||||
this._handles.mouseover(function(){if(!b.resizing){if(this.className)var h=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=h&&h[1]?h[1]:"se"}});if(a.autoHide){this._handles.hide();e(this.element).addClass("ui-resizable-autohide").hover(function(){e(this).removeClass("ui-resizable-autohide");b._handles.show()},function(){if(!b.resizing){e(this).addClass("ui-resizable-autohide");b._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();var b=function(c){e(c).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};
|
||||
if(this.elementIsWrapper){b(this.element);var a=this.element;a.after(this.originalElement.css({position:a.css("position"),width:a.outerWidth(),height:a.outerHeight(),top:a.css("top"),left:a.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);b(this.originalElement);return this},_mouseCapture:function(b){var a=false;for(var c in this.handles)if(e(this.handles[c])[0]==b.target)a=true;return!this.options.disabled&&a},_mouseStart:function(b){var a=this.options,c=this.element.position(),
|
||||
d=this.element;this.resizing=true;this.documentScroll={top:e(document).scrollTop(),left:e(document).scrollLeft()};if(d.is(".ui-draggable")||/absolute/.test(d.css("position")))d.css({position:"absolute",top:c.top,left:c.left});e.browser.opera&&/relative/.test(d.css("position"))&&d.css({position:"relative",top:"auto",left:"auto"});this._renderProxy();c=m(this.helper.css("left"));var f=m(this.helper.css("top"));if(a.containment){c+=e(a.containment).scrollLeft()||0;f+=e(a.containment).scrollTop()||0}this.offset=
|
||||
this.helper.offset();this.position={left:c,top:f};this.size=this._helper?{width:d.outerWidth(),height:d.outerHeight()}:{width:d.width(),height:d.height()};this.originalSize=this._helper?{width:d.outerWidth(),height:d.outerHeight()}:{width:d.width(),height:d.height()};this.originalPosition={left:c,top:f};this.sizeDiff={width:d.outerWidth()-d.width(),height:d.outerHeight()-d.height()};this.originalMousePosition={left:b.pageX,top:b.pageY};this.aspectRatio=typeof a.aspectRatio=="number"?a.aspectRatio:
|
||||
this.originalSize.width/this.originalSize.height||1;a=e(".ui-resizable-"+this.axis).css("cursor");e("body").css("cursor",a=="auto"?this.axis+"-resize":a);d.addClass("ui-resizable-resizing");this._propagate("start",b);return true},_mouseDrag:function(b){var a=this.helper,c=this.originalMousePosition,d=this._change[this.axis];if(!d)return false;c=d.apply(this,[b,b.pageX-c.left||0,b.pageY-c.top||0]);if(this._aspectRatio||b.shiftKey)c=this._updateRatio(c,b);c=this._respectSize(c,b);this._propagate("resize",
|
||||
b);a.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize();this._updateCache(c);this._trigger("resize",b,this.ui());return false},_mouseStop:function(b){this.resizing=false;var a=this.options,c=this;if(this._helper){var d=this._proportionallyResizeElements,f=d.length&&/textarea/i.test(d[0].nodeName);d=f&&e.ui.hasScroll(d[0],"left")?0:c.sizeDiff.height;
|
||||
f=f?0:c.sizeDiff.width;f={width:c.helper.width()-f,height:c.helper.height()-d};d=parseInt(c.element.css("left"),10)+(c.position.left-c.originalPosition.left)||null;var g=parseInt(c.element.css("top"),10)+(c.position.top-c.originalPosition.top)||null;a.animate||this.element.css(e.extend(f,{top:g,left:d}));c.helper.height(c.size.height);c.helper.width(c.size.width);this._helper&&!a.animate&&this._proportionallyResize()}e("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");
|
||||
this._propagate("stop",b);this._helper&&this.helper.remove();return false},_updateCache:function(b){this.offset=this.helper.offset();if(l(b.left))this.position.left=b.left;if(l(b.top))this.position.top=b.top;if(l(b.height))this.size.height=b.height;if(l(b.width))this.size.width=b.width},_updateRatio:function(b){var a=this.position,c=this.size,d=this.axis;if(b.height)b.width=c.height*this.aspectRatio;else if(b.width)b.height=c.width/this.aspectRatio;if(d=="sw"){b.left=a.left+(c.width-b.width);b.top=
|
||||
null}if(d=="nw"){b.top=a.top+(c.height-b.height);b.left=a.left+(c.width-b.width)}return b},_respectSize:function(b){var a=this.options,c=this.axis,d=l(b.width)&&a.maxWidth&&a.maxWidth<b.width,f=l(b.height)&&a.maxHeight&&a.maxHeight<b.height,g=l(b.width)&&a.minWidth&&a.minWidth>b.width,h=l(b.height)&&a.minHeight&&a.minHeight>b.height;if(g)b.width=a.minWidth;if(h)b.height=a.minHeight;if(d)b.width=a.maxWidth;if(f)b.height=a.maxHeight;var i=this.originalPosition.left+this.originalSize.width,j=this.position.top+
|
||||
this.size.height,k=/sw|nw|w/.test(c);c=/nw|ne|n/.test(c);if(g&&k)b.left=i-a.minWidth;if(d&&k)b.left=i-a.maxWidth;if(h&&c)b.top=j-a.minHeight;if(f&&c)b.top=j-a.maxHeight;if((a=!b.width&&!b.height)&&!b.left&&b.top)b.top=null;else if(a&&!b.top&&b.left)b.left=null;return b},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var b=this.helper||this.element,a=0;a<this._proportionallyResizeElements.length;a++){var c=this._proportionallyResizeElements[a];if(!this.borderDif){var d=
|
||||
[c.css("borderTopWidth"),c.css("borderRightWidth"),c.css("borderBottomWidth"),c.css("borderLeftWidth")],f=[c.css("paddingTop"),c.css("paddingRight"),c.css("paddingBottom"),c.css("paddingLeft")];this.borderDif=e.map(d,function(g,h){g=parseInt(g,10)||0;h=parseInt(f[h],10)||0;return g+h})}e.browser.msie&&(e(b).is(":hidden")||e(b).parents(":hidden").length)||c.css({height:b.height()-this.borderDif[0]-this.borderDif[2]||0,width:b.width()-this.borderDif[1]-this.borderDif[3]||0})}},_renderProxy:function(){var b=
|
||||
this.options;this.elementOffset=this.element.offset();if(this._helper){this.helper=this.helper||e('<div style="overflow:hidden;"></div>');var a=e.browser.msie&&e.browser.version<7,c=a?1:0;a=a?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+a,height:this.element.outerHeight()+a,position:"absolute",left:this.elementOffset.left-c+"px",top:this.elementOffset.top-c+"px",zIndex:++b.zIndex});this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(b,
|
||||
a){return{width:this.originalSize.width+a}},w:function(b,a){return{left:this.originalPosition.left+a,width:this.originalSize.width-a}},n:function(b,a,c){return{top:this.originalPosition.top+c,height:this.originalSize.height-c}},s:function(b,a,c){return{height:this.originalSize.height+c}},se:function(b,a,c){return e.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,a,c]))},sw:function(b,a,c){return e.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,a,
|
||||
c]))},ne:function(b,a,c){return e.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,a,c]))},nw:function(b,a,c){return e.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,a,c]))}},_propagate:function(b,a){e.ui.plugin.call(this,b,[a,this.ui()]);b!="resize"&&this._trigger(b,a,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,
|
||||
originalPosition:this.originalPosition}}});e.extend(e.ui.resizable,{version:"1.8.10"});e.ui.plugin.add("resizable","alsoResize",{start:function(){var b=e(this).data("resizable").options,a=function(c){e(c).each(function(){var d=e(this);d.data("resizable-alsoresize",{width:parseInt(d.width(),10),height:parseInt(d.height(),10),left:parseInt(d.css("left"),10),top:parseInt(d.css("top"),10),position:d.css("position")})})};if(typeof b.alsoResize=="object"&&!b.alsoResize.parentNode)if(b.alsoResize.length){b.alsoResize=
|
||||
b.alsoResize[0];a(b.alsoResize)}else e.each(b.alsoResize,function(c){a(c)});else a(b.alsoResize)},resize:function(b,a){var c=e(this).data("resizable");b=c.options;var d=c.originalSize,f=c.originalPosition,g={height:c.size.height-d.height||0,width:c.size.width-d.width||0,top:c.position.top-f.top||0,left:c.position.left-f.left||0},h=function(i,j){e(i).each(function(){var k=e(this),q=e(this).data("resizable-alsoresize"),p={},r=j&&j.length?j:k.parents(a.originalElement[0]).length?["width","height"]:["width",
|
||||
"height","top","left"];e.each(r,function(n,o){if((n=(q[o]||0)+(g[o]||0))&&n>=0)p[o]=n||null});if(e.browser.opera&&/relative/.test(k.css("position"))){c._revertToRelativePosition=true;k.css({position:"absolute",top:"auto",left:"auto"})}k.css(p)})};typeof b.alsoResize=="object"&&!b.alsoResize.nodeType?e.each(b.alsoResize,function(i,j){h(i,j)}):h(b.alsoResize)},stop:function(){var b=e(this).data("resizable"),a=b.options,c=function(d){e(d).each(function(){var f=e(this);f.css({position:f.data("resizable-alsoresize").position})})};
|
||||
if(b._revertToRelativePosition){b._revertToRelativePosition=false;typeof a.alsoResize=="object"&&!a.alsoResize.nodeType?e.each(a.alsoResize,function(d){c(d)}):c(a.alsoResize)}e(this).removeData("resizable-alsoresize")}});e.ui.plugin.add("resizable","animate",{stop:function(b){var a=e(this).data("resizable"),c=a.options,d=a._proportionallyResizeElements,f=d.length&&/textarea/i.test(d[0].nodeName),g=f&&e.ui.hasScroll(d[0],"left")?0:a.sizeDiff.height;f={width:a.size.width-(f?0:a.sizeDiff.width),height:a.size.height-
|
||||
g};g=parseInt(a.element.css("left"),10)+(a.position.left-a.originalPosition.left)||null;var h=parseInt(a.element.css("top"),10)+(a.position.top-a.originalPosition.top)||null;a.element.animate(e.extend(f,h&&g?{top:h,left:g}:{}),{duration:c.animateDuration,easing:c.animateEasing,step:function(){var i={width:parseInt(a.element.css("width"),10),height:parseInt(a.element.css("height"),10),top:parseInt(a.element.css("top"),10),left:parseInt(a.element.css("left"),10)};d&&d.length&&e(d[0]).css({width:i.width,
|
||||
height:i.height});a._updateCache(i);a._propagate("resize",b)}})}});e.ui.plugin.add("resizable","containment",{start:function(){var b=e(this).data("resizable"),a=b.element,c=b.options.containment;if(a=c instanceof e?c.get(0):/parent/.test(c)?a.parent().get(0):c){b.containerElement=e(a);if(/document/.test(c)||c==document){b.containerOffset={left:0,top:0};b.containerPosition={left:0,top:0};b.parentData={element:e(document),left:0,top:0,width:e(document).width(),height:e(document).height()||document.body.parentNode.scrollHeight}}else{var d=
|
||||
e(a),f=[];e(["Top","Right","Left","Bottom"]).each(function(i,j){f[i]=m(d.css("padding"+j))});b.containerOffset=d.offset();b.containerPosition=d.position();b.containerSize={height:d.innerHeight()-f[3],width:d.innerWidth()-f[1]};c=b.containerOffset;var g=b.containerSize.height,h=b.containerSize.width;h=e.ui.hasScroll(a,"left")?a.scrollWidth:h;g=e.ui.hasScroll(a)?a.scrollHeight:g;b.parentData={element:a,left:c.left,top:c.top,width:h,height:g}}}},resize:function(b){var a=e(this).data("resizable"),c=a.options,
|
||||
d=a.containerOffset,f=a.position;b=a._aspectRatio||b.shiftKey;var g={top:0,left:0},h=a.containerElement;if(h[0]!=document&&/static/.test(h.css("position")))g=d;if(f.left<(a._helper?d.left:0)){a.size.width+=a._helper?a.position.left-d.left:a.position.left-g.left;if(b)a.size.height=a.size.width/c.aspectRatio;a.position.left=c.helper?d.left:0}if(f.top<(a._helper?d.top:0)){a.size.height+=a._helper?a.position.top-d.top:a.position.top;if(b)a.size.width=a.size.height*c.aspectRatio;a.position.top=a._helper?
|
||||
d.top:0}a.offset.left=a.parentData.left+a.position.left;a.offset.top=a.parentData.top+a.position.top;c=Math.abs((a._helper?a.offset.left-g.left:a.offset.left-g.left)+a.sizeDiff.width);d=Math.abs((a._helper?a.offset.top-g.top:a.offset.top-d.top)+a.sizeDiff.height);f=a.containerElement.get(0)==a.element.parent().get(0);g=/relative|absolute/.test(a.containerElement.css("position"));if(f&&g)c-=a.parentData.left;if(c+a.size.width>=a.parentData.width){a.size.width=a.parentData.width-c;if(b)a.size.height=
|
||||
a.size.width/a.aspectRatio}if(d+a.size.height>=a.parentData.height){a.size.height=a.parentData.height-d;if(b)a.size.width=a.size.height*a.aspectRatio}},stop:function(){var b=e(this).data("resizable"),a=b.options,c=b.containerOffset,d=b.containerPosition,f=b.containerElement,g=e(b.helper),h=g.offset(),i=g.outerWidth()-b.sizeDiff.width;g=g.outerHeight()-b.sizeDiff.height;b._helper&&!a.animate&&/relative/.test(f.css("position"))&&e(this).css({left:h.left-d.left-c.left,width:i,height:g});b._helper&&!a.animate&&
|
||||
/static/.test(f.css("position"))&&e(this).css({left:h.left-d.left-c.left,width:i,height:g})}});e.ui.plugin.add("resizable","ghost",{start:function(){var b=e(this).data("resizable"),a=b.options,c=b.size;b.ghost=b.originalElement.clone();b.ghost.css({opacity:0.25,display:"block",position:"relative",height:c.height,width:c.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof a.ghost=="string"?a.ghost:"");b.ghost.appendTo(b.helper)},resize:function(){var b=e(this).data("resizable");
|
||||
b.ghost&&b.ghost.css({position:"relative",height:b.size.height,width:b.size.width})},stop:function(){var b=e(this).data("resizable");b.ghost&&b.helper&&b.helper.get(0).removeChild(b.ghost.get(0))}});e.ui.plugin.add("resizable","grid",{resize:function(){var b=e(this).data("resizable"),a=b.options,c=b.size,d=b.originalSize,f=b.originalPosition,g=b.axis;a.grid=typeof a.grid=="number"?[a.grid,a.grid]:a.grid;var h=Math.round((c.width-d.width)/(a.grid[0]||1))*(a.grid[0]||1);a=Math.round((c.height-d.height)/
|
||||
(a.grid[1]||1))*(a.grid[1]||1);if(/^(se|s|e)$/.test(g)){b.size.width=d.width+h;b.size.height=d.height+a}else if(/^(ne)$/.test(g)){b.size.width=d.width+h;b.size.height=d.height+a;b.position.top=f.top-a}else{if(/^(sw)$/.test(g)){b.size.width=d.width+h;b.size.height=d.height+a}else{b.size.width=d.width+h;b.size.height=d.height+a;b.position.top=f.top-a}b.position.left=f.left-h}}});var m=function(b){return parseInt(b,10)||0},l=function(b){return!isNaN(parseInt(b,10))}})(jQuery);
|
||||
;/*
|
||||
* jQuery UI Dialog 1.8.10
|
||||
*
|
||||
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
||||
* Dual licensed under the MIT or GPL Version 2 licenses.
|
||||
* http://jquery.org/license
|
||||
*
|
||||
* http://docs.jquery.com/UI/Dialog
|
||||
*
|
||||
* Depends:
|
||||
* jquery.ui.core.js
|
||||
* jquery.ui.widget.js
|
||||
* jquery.ui.button.js
|
||||
* jquery.ui.draggable.js
|
||||
* jquery.ui.mouse.js
|
||||
* jquery.ui.position.js
|
||||
* jquery.ui.resizable.js
|
||||
*/
|
||||
(function(c,j){var k={buttons:true,height:true,maxHeight:true,maxWidth:true,minHeight:true,minWidth:true,width:true},l={maxHeight:true,maxWidth:true,minHeight:true,minWidth:true};c.widget("ui.dialog",{options:{autoOpen:true,buttons:{},closeOnEscape:true,closeText:"close",dialogClass:"",draggable:true,hide:null,height:"auto",maxHeight:false,maxWidth:false,minHeight:150,minWidth:150,modal:false,position:{my:"center",at:"center",collision:"fit",using:function(a){var b=c(this).css(a).offset().top;b<0&&
|
||||
c(this).css("top",a.top-b)}},resizable:true,show:null,stack:true,title:"",width:300,zIndex:1E3},_create:function(){this.originalTitle=this.element.attr("title");if(typeof this.originalTitle!=="string")this.originalTitle="";this.options.title=this.options.title||this.originalTitle;var a=this,b=a.options,d=b.title||" ",e=c.ui.dialog.getTitleId(a.element),g=(a.uiDialog=c("<div></div>")).appendTo(document.body).hide().addClass("ui-dialog ui-widget ui-widget-content ui-corner-all "+b.dialogClass).css({zIndex:b.zIndex}).attr("tabIndex",
|
||||
-1).css("outline",0).keydown(function(i){if(b.closeOnEscape&&i.keyCode&&i.keyCode===c.ui.keyCode.ESCAPE){a.close(i);i.preventDefault()}}).attr({role:"dialog","aria-labelledby":e}).mousedown(function(i){a.moveToTop(false,i)});a.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(g);var f=(a.uiDialogTitlebar=c("<div></div>")).addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(g),h=c('<a href="#"></a>').addClass("ui-dialog-titlebar-close ui-corner-all").attr("role",
|
||||
"button").hover(function(){h.addClass("ui-state-hover")},function(){h.removeClass("ui-state-hover")}).focus(function(){h.addClass("ui-state-focus")}).blur(function(){h.removeClass("ui-state-focus")}).click(function(i){a.close(i);return false}).appendTo(f);(a.uiDialogTitlebarCloseText=c("<span></span>")).addClass("ui-icon ui-icon-closethick").text(b.closeText).appendTo(h);c("<span></span>").addClass("ui-dialog-title").attr("id",e).html(d).prependTo(f);if(c.isFunction(b.beforeclose)&&!c.isFunction(b.beforeClose))b.beforeClose=
|
||||
b.beforeclose;f.find("*").add(f).disableSelection();b.draggable&&c.fn.draggable&&a._makeDraggable();b.resizable&&c.fn.resizable&&a._makeResizable();a._createButtons(b.buttons);a._isOpen=false;c.fn.bgiframe&&g.bgiframe()},_init:function(){this.options.autoOpen&&this.open()},destroy:function(){var a=this;a.overlay&&a.overlay.destroy();a.uiDialog.hide();a.element.unbind(".dialog").removeData("dialog").removeClass("ui-dialog-content ui-widget-content").hide().appendTo("body");a.uiDialog.remove();a.originalTitle&&
|
||||
a.element.attr("title",a.originalTitle);return a},widget:function(){return this.uiDialog},close:function(a){var b=this,d,e;if(false!==b._trigger("beforeClose",a)){b.overlay&&b.overlay.destroy();b.uiDialog.unbind("keypress.ui-dialog");b._isOpen=false;if(b.options.hide)b.uiDialog.hide(b.options.hide,function(){b._trigger("close",a)});else{b.uiDialog.hide();b._trigger("close",a)}c.ui.dialog.overlay.resize();if(b.options.modal){d=0;c(".ui-dialog").each(function(){if(this!==b.uiDialog[0]){e=c(this).css("z-index");
|
||||
isNaN(e)||(d=Math.max(d,e))}});c.ui.dialog.maxZ=d}return b}},isOpen:function(){return this._isOpen},moveToTop:function(a,b){var d=this,e=d.options;if(e.modal&&!a||!e.stack&&!e.modal)return d._trigger("focus",b);if(e.zIndex>c.ui.dialog.maxZ)c.ui.dialog.maxZ=e.zIndex;if(d.overlay){c.ui.dialog.maxZ+=1;d.overlay.$el.css("z-index",c.ui.dialog.overlay.maxZ=c.ui.dialog.maxZ)}a={scrollTop:d.element.attr("scrollTop"),scrollLeft:d.element.attr("scrollLeft")};c.ui.dialog.maxZ+=1;d.uiDialog.css("z-index",c.ui.dialog.maxZ);
|
||||
d.element.attr(a);d._trigger("focus",b);return d},open:function(){if(!this._isOpen){var a=this,b=a.options,d=a.uiDialog;a.overlay=b.modal?new c.ui.dialog.overlay(a):null;a._size();a._position(b.position);d.show(b.show);a.moveToTop(true);b.modal&&d.bind("keypress.ui-dialog",function(e){if(e.keyCode===c.ui.keyCode.TAB){var g=c(":tabbable",this),f=g.filter(":first");g=g.filter(":last");if(e.target===g[0]&&!e.shiftKey){f.focus(1);return false}else if(e.target===f[0]&&e.shiftKey){g.focus(1);return false}}});
|
||||
c(a.element.find(":tabbable").get().concat(d.find(".ui-dialog-buttonpane :tabbable").get().concat(d.get()))).eq(0).focus();a._isOpen=true;a._trigger("open");return a}},_createButtons:function(a){var b=this,d=false,e=c("<div></div>").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix"),g=c("<div></div>").addClass("ui-dialog-buttonset").appendTo(e);b.uiDialog.find(".ui-dialog-buttonpane").remove();typeof a==="object"&&a!==null&&c.each(a,function(){return!(d=true)});if(d){c.each(a,function(f,
|
||||
h){h=c.isFunction(h)?{click:h,text:f}:h;f=c('<button type="button"></button>').attr(h,true).unbind("click").click(function(){h.click.apply(b.element[0],arguments)}).appendTo(g);c.fn.button&&f.button()});e.appendTo(b.uiDialog)}},_makeDraggable:function(){function a(f){return{position:f.position,offset:f.offset}}var b=this,d=b.options,e=c(document),g;b.uiDialog.draggable({cancel:".ui-dialog-content, .ui-dialog-titlebar-close",handle:".ui-dialog-titlebar",containment:"document",start:function(f,h){g=
|
||||
d.height==="auto"?"auto":c(this).height();c(this).height(c(this).height()).addClass("ui-dialog-dragging");b._trigger("dragStart",f,a(h))},drag:function(f,h){b._trigger("drag",f,a(h))},stop:function(f,h){d.position=[h.position.left-e.scrollLeft(),h.position.top-e.scrollTop()];c(this).removeClass("ui-dialog-dragging").height(g);b._trigger("dragStop",f,a(h));c.ui.dialog.overlay.resize()}})},_makeResizable:function(a){function b(f){return{originalPosition:f.originalPosition,originalSize:f.originalSize,
|
||||
position:f.position,size:f.size}}a=a===j?this.options.resizable:a;var d=this,e=d.options,g=d.uiDialog.css("position");a=typeof a==="string"?a:"n,e,s,w,se,sw,ne,nw";d.uiDialog.resizable({cancel:".ui-dialog-content",containment:"document",alsoResize:d.element,maxWidth:e.maxWidth,maxHeight:e.maxHeight,minWidth:e.minWidth,minHeight:d._minHeight(),handles:a,start:function(f,h){c(this).addClass("ui-dialog-resizing");d._trigger("resizeStart",f,b(h))},resize:function(f,h){d._trigger("resize",f,b(h))},stop:function(f,
|
||||
h){c(this).removeClass("ui-dialog-resizing");e.height=c(this).height();e.width=c(this).width();d._trigger("resizeStop",f,b(h));c.ui.dialog.overlay.resize()}}).css("position",g).find(".ui-resizable-se").addClass("ui-icon ui-icon-grip-diagonal-se")},_minHeight:function(){var a=this.options;return a.height==="auto"?a.minHeight:Math.min(a.minHeight,a.height)},_position:function(a){var b=[],d=[0,0],e;if(a){if(typeof a==="string"||typeof a==="object"&&"0"in a){b=a.split?a.split(" "):[a[0],a[1]];if(b.length===
|
||||
1)b[1]=b[0];c.each(["left","top"],function(g,f){if(+b[g]===b[g]){d[g]=b[g];b[g]=f}});a={my:b.join(" "),at:b.join(" "),offset:d.join(" ")}}a=c.extend({},c.ui.dialog.prototype.options.position,a)}else a=c.ui.dialog.prototype.options.position;(e=this.uiDialog.is(":visible"))||this.uiDialog.show();this.uiDialog.css({top:0,left:0}).position(c.extend({of:window},a));e||this.uiDialog.hide()},_setOptions:function(a){var b=this,d={},e=false;c.each(a,function(g,f){b._setOption(g,f);if(g in k)e=true;if(g in
|
||||
l)d[g]=f});e&&this._size();this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option",d)},_setOption:function(a,b){var d=this,e=d.uiDialog;switch(a){case "beforeclose":a="beforeClose";break;case "buttons":d._createButtons(b);break;case "closeText":d.uiDialogTitlebarCloseText.text(""+b);break;case "dialogClass":e.removeClass(d.options.dialogClass).addClass("ui-dialog ui-widget ui-widget-content ui-corner-all "+b);break;case "disabled":b?e.addClass("ui-dialog-disabled"):e.removeClass("ui-dialog-disabled");
|
||||
break;case "draggable":var g=e.is(":data(draggable)");g&&!b&&e.draggable("destroy");!g&&b&&d._makeDraggable();break;case "position":d._position(b);break;case "resizable":(g=e.is(":data(resizable)"))&&!b&&e.resizable("destroy");g&&typeof b==="string"&&e.resizable("option","handles",b);!g&&b!==false&&d._makeResizable(b);break;case "title":c(".ui-dialog-title",d.uiDialogTitlebar).html(""+(b||" "));break}c.Widget.prototype._setOption.apply(d,arguments)},_size:function(){var a=this.options,b,d,e=
|
||||
this.uiDialog.is(":visible");this.element.show().css({width:"auto",minHeight:0,height:0});if(a.minWidth>a.width)a.width=a.minWidth;b=this.uiDialog.css({height:"auto",width:a.width}).height();d=Math.max(0,a.minHeight-b);if(a.height==="auto")if(c.support.minHeight)this.element.css({minHeight:d,height:"auto"});else{this.uiDialog.show();a=this.element.css("height","auto").height();e||this.uiDialog.hide();this.element.height(Math.max(a,d))}else this.element.height(Math.max(a.height-b,0));this.uiDialog.is(":data(resizable)")&&
|
||||
this.uiDialog.resizable("option","minHeight",this._minHeight())}});c.extend(c.ui.dialog,{version:"1.8.10",uuid:0,maxZ:0,getTitleId:function(a){a=a.attr("id");if(!a){this.uuid+=1;a=this.uuid}return"ui-dialog-title-"+a},overlay:function(a){this.$el=c.ui.dialog.overlay.create(a)}});c.extend(c.ui.dialog.overlay,{instances:[],oldInstances:[],maxZ:0,events:c.map("focus,mousedown,mouseup,keydown,keypress,click".split(","),function(a){return a+".dialog-overlay"}).join(" "),create:function(a){if(this.instances.length===
|
||||
0){setTimeout(function(){c.ui.dialog.overlay.instances.length&&c(document).bind(c.ui.dialog.overlay.events,function(d){if(c(d.target).zIndex()<c.ui.dialog.overlay.maxZ)return false})},1);c(document).bind("keydown.dialog-overlay",function(d){if(a.options.closeOnEscape&&d.keyCode&&d.keyCode===c.ui.keyCode.ESCAPE){a.close(d);d.preventDefault()}});c(window).bind("resize.dialog-overlay",c.ui.dialog.overlay.resize)}var b=(this.oldInstances.pop()||c("<div></div>").addClass("ui-widget-overlay")).appendTo(document.body).css({width:this.width(),
|
||||
height:this.height()});c.fn.bgiframe&&b.bgiframe();this.instances.push(b);return b},destroy:function(a){var b=c.inArray(a,this.instances);b!=-1&&this.oldInstances.push(this.instances.splice(b,1)[0]);this.instances.length===0&&c([document,window]).unbind(".dialog-overlay");a.remove();var d=0;c.each(this.instances,function(){d=Math.max(d,this.css("z-index"))});this.maxZ=d},height:function(){var a,b;if(c.browser.msie&&c.browser.version<7){a=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight);
|
||||
b=Math.max(document.documentElement.offsetHeight,document.body.offsetHeight);return a<b?c(window).height()+"px":a+"px"}else return c(document).height()+"px"},width:function(){var a,b;if(c.browser.msie&&c.browser.version<7){a=Math.max(document.documentElement.scrollWidth,document.body.scrollWidth);b=Math.max(document.documentElement.offsetWidth,document.body.offsetWidth);return a<b?c(window).width()+"px":a+"px"}else return c(document).width()+"px"},resize:function(){var a=c([]);c.each(c.ui.dialog.overlay.instances,
|
||||
function(){a=a.add(this)});a.css({width:0,height:0}).css({width:c.ui.dialog.overlay.width(),height:c.ui.dialog.overlay.height()})}});c.extend(c.ui.dialog.overlay.prototype,{destroy:function(){c.ui.dialog.overlay.destroy(this.$el)}})})(jQuery);
|
||||
;/*
|
||||
* jQuery UI Effects 1.8.10
|
||||
*
|
||||
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
||||
* Dual licensed under the MIT or GPL Version 2 licenses.
|
||||
* http://jquery.org/license
|
||||
*
|
||||
* http://docs.jquery.com/UI/Effects/
|
||||
*/
|
||||
jQuery.effects||function(f,j){function n(c){var a;if(c&&c.constructor==Array&&c.length==3)return c;if(a=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(c))return[parseInt(a[1],10),parseInt(a[2],10),parseInt(a[3],10)];if(a=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(c))return[parseFloat(a[1])*2.55,parseFloat(a[2])*2.55,parseFloat(a[3])*2.55];if(a=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(c))return[parseInt(a[1],
|
||||
16),parseInt(a[2],16),parseInt(a[3],16)];if(a=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(c))return[parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16),parseInt(a[3]+a[3],16)];if(/rgba\(0, 0, 0, 0\)/.exec(c))return o.transparent;return o[f.trim(c).toLowerCase()]}function s(c,a){var b;do{b=f.curCSS(c,a);if(b!=""&&b!="transparent"||f.nodeName(c,"body"))break;a="backgroundColor"}while(c=c.parentNode);return n(b)}function p(){var c=document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle,
|
||||
a={},b,d;if(c&&c.length&&c[0]&&c[c[0]])for(var e=c.length;e--;){b=c[e];if(typeof c[b]=="string"){d=b.replace(/\-(\w)/g,function(g,h){return h.toUpperCase()});a[d]=c[b]}}else for(b in c)if(typeof c[b]==="string")a[b]=c[b];return a}function q(c){var a,b;for(a in c){b=c[a];if(b==null||f.isFunction(b)||a in t||/scrollbar/.test(a)||!/color/i.test(a)&&isNaN(parseFloat(b)))delete c[a]}return c}function u(c,a){var b={_:0},d;for(d in a)if(c[d]!=a[d])b[d]=a[d];return b}function k(c,a,b,d){if(typeof c=="object"){d=
|
||||
a;b=null;a=c;c=a.effect}if(f.isFunction(a)){d=a;b=null;a={}}if(typeof a=="number"||f.fx.speeds[a]){d=b;b=a;a={}}if(f.isFunction(b)){d=b;b=null}a=a||{};b=b||a.duration;b=f.fx.off?0:typeof b=="number"?b:b in f.fx.speeds?f.fx.speeds[b]:f.fx.speeds._default;d=d||a.complete;return[c,a,b,d]}function m(c){if(!c||typeof c==="number"||f.fx.speeds[c])return true;if(typeof c==="string"&&!f.effects[c])return true;return false}f.effects={};f.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor",
|
||||
"borderTopColor","borderColor","color","outlineColor"],function(c,a){f.fx.step[a]=function(b){if(!b.colorInit){b.start=s(b.elem,a);b.end=n(b.end);b.colorInit=true}b.elem.style[a]="rgb("+Math.max(Math.min(parseInt(b.pos*(b.end[0]-b.start[0])+b.start[0],10),255),0)+","+Math.max(Math.min(parseInt(b.pos*(b.end[1]-b.start[1])+b.start[1],10),255),0)+","+Math.max(Math.min(parseInt(b.pos*(b.end[2]-b.start[2])+b.start[2],10),255),0)+")"}});var o={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,
|
||||
0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,
|
||||
211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0],transparent:[255,255,255]},r=["add","remove","toggle"],t={border:1,borderBottom:1,borderColor:1,borderLeft:1,borderRight:1,borderTop:1,borderWidth:1,margin:1,padding:1};f.effects.animateClass=function(c,a,b,
|
||||
d){if(f.isFunction(b)){d=b;b=null}return this.queue("fx",function(){var e=f(this),g=e.attr("style")||" ",h=q(p.call(this)),l,v=e.attr("className");f.each(r,function(w,i){c[i]&&e[i+"Class"](c[i])});l=q(p.call(this));e.attr("className",v);e.animate(u(h,l),a,b,function(){f.each(r,function(w,i){c[i]&&e[i+"Class"](c[i])});if(typeof e.attr("style")=="object"){e.attr("style").cssText="";e.attr("style").cssText=g}else e.attr("style",g);d&&d.apply(this,arguments)});h=f.queue(this);l=h.splice(h.length-1,1)[0];
|
||||
h.splice(1,0,l);f.dequeue(this)})};f.fn.extend({_addClass:f.fn.addClass,addClass:function(c,a,b,d){return a?f.effects.animateClass.apply(this,[{add:c},a,b,d]):this._addClass(c)},_removeClass:f.fn.removeClass,removeClass:function(c,a,b,d){return a?f.effects.animateClass.apply(this,[{remove:c},a,b,d]):this._removeClass(c)},_toggleClass:f.fn.toggleClass,toggleClass:function(c,a,b,d,e){return typeof a=="boolean"||a===j?b?f.effects.animateClass.apply(this,[a?{add:c}:{remove:c},b,d,e]):this._toggleClass(c,
|
||||
a):f.effects.animateClass.apply(this,[{toggle:c},a,b,d])},switchClass:function(c,a,b,d,e){return f.effects.animateClass.apply(this,[{add:a,remove:c},b,d,e])}});f.extend(f.effects,{version:"1.8.10",save:function(c,a){for(var b=0;b<a.length;b++)a[b]!==null&&c.data("ec.storage."+a[b],c[0].style[a[b]])},restore:function(c,a){for(var b=0;b<a.length;b++)a[b]!==null&&c.css(a[b],c.data("ec.storage."+a[b]))},setMode:function(c,a){if(a=="toggle")a=c.is(":hidden")?"show":"hide";return a},getBaseline:function(c,
|
||||
a){var b;switch(c[0]){case "top":b=0;break;case "middle":b=0.5;break;case "bottom":b=1;break;default:b=c[0]/a.height}switch(c[1]){case "left":c=0;break;case "center":c=0.5;break;case "right":c=1;break;default:c=c[1]/a.width}return{x:c,y:b}},createWrapper:function(c){if(c.parent().is(".ui-effects-wrapper"))return c.parent();var a={width:c.outerWidth(true),height:c.outerHeight(true),"float":c.css("float")},b=f("<div></div>").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",
|
||||
border:"none",margin:0,padding:0});c.wrap(b);b=c.parent();if(c.css("position")=="static"){b.css({position:"relative"});c.css({position:"relative"})}else{f.extend(a,{position:c.css("position"),zIndex:c.css("z-index")});f.each(["top","left","bottom","right"],function(d,e){a[e]=c.css(e);if(isNaN(parseInt(a[e],10)))a[e]="auto"});c.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})}return b.css(a).show()},removeWrapper:function(c){if(c.parent().is(".ui-effects-wrapper"))return c.parent().replaceWith(c);
|
||||
return c},setTransition:function(c,a,b,d){d=d||{};f.each(a,function(e,g){unit=c.cssUnit(g);if(unit[0]>0)d[g]=unit[0]*b+unit[1]});return d}});f.fn.extend({effect:function(c){var a=k.apply(this,arguments),b={options:a[1],duration:a[2],callback:a[3]};a=b.options.mode;var d=f.effects[c];if(f.fx.off||!d)return a?this[a](b.duration,b.callback):this.each(function(){b.callback&&b.callback.call(this)});return d.call(this,b)},_show:f.fn.show,show:function(c){if(m(c))return this._show.apply(this,arguments);
|
||||
else{var a=k.apply(this,arguments);a[1].mode="show";return this.effect.apply(this,a)}},_hide:f.fn.hide,hide:function(c){if(m(c))return this._hide.apply(this,arguments);else{var a=k.apply(this,arguments);a[1].mode="hide";return this.effect.apply(this,a)}},__toggle:f.fn.toggle,toggle:function(c){if(m(c)||typeof c==="boolean"||f.isFunction(c))return this.__toggle.apply(this,arguments);else{var a=k.apply(this,arguments);a[1].mode="toggle";return this.effect.apply(this,a)}},cssUnit:function(c){var a=this.css(c),
|
||||
b=[];f.each(["em","px","%","pt"],function(d,e){if(a.indexOf(e)>0)b=[parseFloat(a),e]});return b}});f.easing.jswing=f.easing.swing;f.extend(f.easing,{def:"easeOutQuad",swing:function(c,a,b,d,e){return f.easing[f.easing.def](c,a,b,d,e)},easeInQuad:function(c,a,b,d,e){return d*(a/=e)*a+b},easeOutQuad:function(c,a,b,d,e){return-d*(a/=e)*(a-2)+b},easeInOutQuad:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a+b;return-d/2*(--a*(a-2)-1)+b},easeInCubic:function(c,a,b,d,e){return d*(a/=e)*a*a+b},easeOutCubic:function(c,
|
||||
a,b,d,e){return d*((a=a/e-1)*a*a+1)+b},easeInOutCubic:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a+b;return d/2*((a-=2)*a*a+2)+b},easeInQuart:function(c,a,b,d,e){return d*(a/=e)*a*a*a+b},easeOutQuart:function(c,a,b,d,e){return-d*((a=a/e-1)*a*a*a-1)+b},easeInOutQuart:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a*a+b;return-d/2*((a-=2)*a*a*a-2)+b},easeInQuint:function(c,a,b,d,e){return d*(a/=e)*a*a*a*a+b},easeOutQuint:function(c,a,b,d,e){return d*((a=a/e-1)*a*a*a*a+1)+b},easeInOutQuint:function(c,
|
||||
a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a*a*a+b;return d/2*((a-=2)*a*a*a*a+2)+b},easeInSine:function(c,a,b,d,e){return-d*Math.cos(a/e*(Math.PI/2))+d+b},easeOutSine:function(c,a,b,d,e){return d*Math.sin(a/e*(Math.PI/2))+b},easeInOutSine:function(c,a,b,d,e){return-d/2*(Math.cos(Math.PI*a/e)-1)+b},easeInExpo:function(c,a,b,d,e){return a==0?b:d*Math.pow(2,10*(a/e-1))+b},easeOutExpo:function(c,a,b,d,e){return a==e?b+d:d*(-Math.pow(2,-10*a/e)+1)+b},easeInOutExpo:function(c,a,b,d,e){if(a==0)return b;if(a==
|
||||
e)return b+d;if((a/=e/2)<1)return d/2*Math.pow(2,10*(a-1))+b;return d/2*(-Math.pow(2,-10*--a)+2)+b},easeInCirc:function(c,a,b,d,e){return-d*(Math.sqrt(1-(a/=e)*a)-1)+b},easeOutCirc:function(c,a,b,d,e){return d*Math.sqrt(1-(a=a/e-1)*a)+b},easeInOutCirc:function(c,a,b,d,e){if((a/=e/2)<1)return-d/2*(Math.sqrt(1-a*a)-1)+b;return d/2*(Math.sqrt(1-(a-=2)*a)+1)+b},easeInElastic:function(c,a,b,d,e){c=1.70158;var g=0,h=d;if(a==0)return b;if((a/=e)==1)return b+d;g||(g=e*0.3);if(h<Math.abs(d)){h=d;c=g/4}else c=
|
||||
g/(2*Math.PI)*Math.asin(d/h);return-(h*Math.pow(2,10*(a-=1))*Math.sin((a*e-c)*2*Math.PI/g))+b},easeOutElastic:function(c,a,b,d,e){c=1.70158;var g=0,h=d;if(a==0)return b;if((a/=e)==1)return b+d;g||(g=e*0.3);if(h<Math.abs(d)){h=d;c=g/4}else c=g/(2*Math.PI)*Math.asin(d/h);return h*Math.pow(2,-10*a)*Math.sin((a*e-c)*2*Math.PI/g)+d+b},easeInOutElastic:function(c,a,b,d,e){c=1.70158;var g=0,h=d;if(a==0)return b;if((a/=e/2)==2)return b+d;g||(g=e*0.3*1.5);if(h<Math.abs(d)){h=d;c=g/4}else c=g/(2*Math.PI)*Math.asin(d/
|
||||
h);if(a<1)return-0.5*h*Math.pow(2,10*(a-=1))*Math.sin((a*e-c)*2*Math.PI/g)+b;return h*Math.pow(2,-10*(a-=1))*Math.sin((a*e-c)*2*Math.PI/g)*0.5+d+b},easeInBack:function(c,a,b,d,e,g){if(g==j)g=1.70158;return d*(a/=e)*a*((g+1)*a-g)+b},easeOutBack:function(c,a,b,d,e,g){if(g==j)g=1.70158;return d*((a=a/e-1)*a*((g+1)*a+g)+1)+b},easeInOutBack:function(c,a,b,d,e,g){if(g==j)g=1.70158;if((a/=e/2)<1)return d/2*a*a*(((g*=1.525)+1)*a-g)+b;return d/2*((a-=2)*a*(((g*=1.525)+1)*a+g)+2)+b},easeInBounce:function(c,
|
||||
a,b,d,e){return d-f.easing.easeOutBounce(c,e-a,0,d,e)+b},easeOutBounce:function(c,a,b,d,e){return(a/=e)<1/2.75?d*7.5625*a*a+b:a<2/2.75?d*(7.5625*(a-=1.5/2.75)*a+0.75)+b:a<2.5/2.75?d*(7.5625*(a-=2.25/2.75)*a+0.9375)+b:d*(7.5625*(a-=2.625/2.75)*a+0.984375)+b},easeInOutBounce:function(c,a,b,d,e){if(a<e/2)return f.easing.easeInBounce(c,a*2,0,d,e)*0.5+b;return f.easing.easeOutBounce(c,a*2-e,0,d,e)*0.5+d*0.5+b}})}(jQuery);
|
||||
;
|
||||
275
接口说明/京西管理后台PC端/resources/scripts/messagecenter.js
Normal file
@@ -0,0 +1,275 @@
|
||||
if (typeof console == 'undefined') console = {
|
||||
log: function () { }
|
||||
};
|
||||
|
||||
// sniff chrome
|
||||
var CHROME_5_LOCAL = false;
|
||||
var CHROME = false;
|
||||
var SAFARI = false;
|
||||
var FIREFOX = false;
|
||||
var WEBKIT = false;
|
||||
var OS_MAC = false;
|
||||
var IOS = false;
|
||||
var ANDROID = false;
|
||||
var MOBILE_DEVICE = false;
|
||||
|
||||
var IE = false;
|
||||
var IE_10_AND_BELOW = false; //ie 10 and lower
|
||||
var IE_11_AND_ABOVE = false; //ie 11 and above
|
||||
var BROWSER_VERSION = 5000;
|
||||
(function () {
|
||||
if(!window.$axure) window.$axure = function() {};
|
||||
var useragent = window.navigator.userAgent;
|
||||
|
||||
var edgeRegex = /Edge\/([0-9]+)/g;
|
||||
var edgeMatch = edgeRegex.exec(useragent);
|
||||
$axure.browser = { isEdge: Boolean(edgeMatch) };
|
||||
|
||||
if(!$axure.browser.isEdge) {
|
||||
var chromeRegex = /Chrome\/([0-9]+).([0-9]+)/g;
|
||||
var chromeMatch = chromeRegex.exec(useragent);
|
||||
CHROME = Boolean(chromeMatch);
|
||||
CHROME_5_LOCAL = chromeMatch &&
|
||||
Number(chromeMatch[1]) >= 5 &&
|
||||
location.href.indexOf('file://') >= 0;
|
||||
}
|
||||
|
||||
var safariRegex = /Safari\/([0-9]+)/g;
|
||||
var safariMatch = safariRegex.exec(useragent);
|
||||
SAFARI = Boolean(safariMatch) && !CHROME; //because chrome also inserts safari string into user agent
|
||||
|
||||
var webkitRegex = /WebKit\//g ;
|
||||
WEBKIT = Boolean(webkitRegex.exec(useragent));
|
||||
|
||||
FIREFOX = useragent.toLowerCase().indexOf('firefox') > -1;
|
||||
|
||||
var macRegex = /Mac/g ;
|
||||
OS_MAC = Boolean(macRegex.exec(window.navigator.platform));
|
||||
|
||||
IOS = useragent.match(/iPhone/i) || useragent.match(/iPad/i) || useragent.match(/iPod/i);
|
||||
ANDROID = useragent.match(/Android/i);
|
||||
|
||||
MOBILE_DEVICE = ANDROID || IOS
|
||||
|| navigator.userAgent.match(/webOS/i)
|
||||
|| navigator.userAgent.match(/BlackBerry/i)
|
||||
|| navigator.userAgent.match(/Tablet PC/i)
|
||||
|| navigator.userAgent.match(/Windows Phone/i);
|
||||
|
||||
if($.browser) {
|
||||
if($.browser.msie) IE_10_AND_BELOW = true;
|
||||
else IE_11_AND_ABOVE = useragent.toLowerCase().indexOf('trident') > -1;
|
||||
|
||||
BROWSER_VERSION = $.browser.version;
|
||||
}
|
||||
|
||||
IE = IE_10_AND_BELOW || IE_11_AND_ABOVE;
|
||||
|
||||
//Used by sitemap and variables.js getLinkUrl functions so that they know
|
||||
//whether to embed global variables in URL as query string or hash string
|
||||
//_shouldSendVars persists the value for sitemap instead of re-checking every time
|
||||
var _shouldSendVars;
|
||||
var _shouldSendVarsToServer = function(url) {
|
||||
if(typeof _shouldSendVars != 'undefined') {
|
||||
return _shouldSendVars;
|
||||
}
|
||||
|
||||
if(SAFARI || (IE_10_AND_BELOW && BROWSER_VERSION < 10)) {
|
||||
var urlToCheck = typeof url != 'undefined' ? url : window.location.href;
|
||||
var serverRegex = /http:\/\/127\.0\.0\.1:[0-9]{5}/g;
|
||||
var serverMatch = serverRegex.exec(urlToCheck);
|
||||
var previewRegex = /[0-9]{2}\.[0-9]{2}\.[0-9]{2}/g;
|
||||
var previewMatch = previewRegex.exec(urlToCheck);
|
||||
if(Boolean(serverMatch) && Boolean(previewMatch)) {
|
||||
_shouldSendVars = true;
|
||||
return _shouldSendVars;
|
||||
}
|
||||
}
|
||||
|
||||
_shouldSendVars = false;
|
||||
return _shouldSendVars;
|
||||
};
|
||||
$axure.shouldSendVarsToServer = _shouldSendVarsToServer;
|
||||
})();
|
||||
|
||||
(function() {
|
||||
var _topMessageCenter;
|
||||
var _messageCenter = {};
|
||||
var _listeners = [];
|
||||
var _stateListeners = [];
|
||||
var _state = {};
|
||||
var _eventObject = null;
|
||||
|
||||
var _queuedMessages = [];
|
||||
var _initialized = false;
|
||||
|
||||
// this is for the non Chrome 5 local scenarios. The "top" message center will dispatch to all the bottom ones
|
||||
var _childrenMessageCenters = [];
|
||||
|
||||
// create $axure if it hasn't been created
|
||||
if (!window.$axure) window.$axure = function() {};
|
||||
$axure.messageCenter = _messageCenter;
|
||||
|
||||
// isolate scope, and initialize _topMessageCenter.
|
||||
(function() {
|
||||
if (!CHROME_5_LOCAL) {
|
||||
var topAxureWindow = window;
|
||||
try {
|
||||
while(topAxureWindow.parent && topAxureWindow.parent !== topAxureWindow
|
||||
&& topAxureWindow.parent.$axure) topAxureWindow = topAxureWindow.parent;
|
||||
} catch(e) {}
|
||||
_topMessageCenter = topAxureWindow.$axure.messageCenter;
|
||||
}
|
||||
})();
|
||||
|
||||
$(window.document).ready(function() {
|
||||
if (CHROME_5_LOCAL) {
|
||||
$('body').append("<div id='axureEventReceiverDiv' style='display:none'></div>" +
|
||||
"<div id='axureEventSenderDiv' style='display:none'></div>");
|
||||
|
||||
_eventObject = window.document.createEvent('Event');
|
||||
_eventObject.initEvent('axureMessageSenderEvent', true, true);
|
||||
|
||||
$('#axureEventReceiverDiv').bind('axureMessageReceiverEvent', function () {
|
||||
var request = JSON.parse($(this).text());
|
||||
_handleRequest(request);
|
||||
});
|
||||
} else {
|
||||
if (_topMessageCenter != _messageCenter) {
|
||||
_topMessageCenter.addChildMessageCenter(_messageCenter);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
var _handleRequest = function (request) {
|
||||
// route the request to all the listeners
|
||||
for(var i = 0; i < _listeners.length; i++) _listeners[i](request.message, request.data);
|
||||
|
||||
// now handle the queued messages if we're initializing
|
||||
if (request.message == 'initialize') {
|
||||
_initialized = true;
|
||||
// send all the queued messages and return
|
||||
for (var i = 0; i < _queuedMessages.length; i++) {
|
||||
var qRequest = _queuedMessages[i];
|
||||
_messageCenter.postMessage(qRequest.message, qRequest.data);
|
||||
}
|
||||
_queuedMessages = [];
|
||||
}
|
||||
|
||||
// and then handle the set state messages, if necessary
|
||||
if (request.message == 'setState') {
|
||||
_state[request.data.key] = request.data.value;
|
||||
for (var i = 0; i < _stateListeners.length; i++) {
|
||||
var keyListener = _stateListeners[i];
|
||||
// if thep passed a null or empty value, always post the message
|
||||
if (!keyListener.key || keyListener.key == request.data.key) {
|
||||
keyListener.listener(request.data.key, request.data.value);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
// -----------------------------------------------------------------------------------------
|
||||
// This method allows for dispatching messages in the non-chromelocal scenario.
|
||||
// Each child calls this on _topMessageCenter
|
||||
// -----------------------------------------------------------------------------------------
|
||||
_messageCenter.addChildMessageCenter = function(messageCenter) {
|
||||
_childrenMessageCenters[_childrenMessageCenters.length] = messageCenter;
|
||||
};
|
||||
|
||||
// -----------------------------------------------------------------------------------------
|
||||
// This method allows for dispatching messages in the non-chromelocal scenario.
|
||||
// Each child calls this on _topMessageCenter
|
||||
// -----------------------------------------------------------------------------------------
|
||||
_messageCenter.dispatchMessage = function(message, data) {
|
||||
_handleRequest({
|
||||
message: message,
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
// -----------------------------------------------------------------------------------------
|
||||
// -----------------------------------------------------------------------------------------
|
||||
_messageCenter.dispatchMessageRecursively = function(message, data) {
|
||||
|
||||
// dispatch to the top center first
|
||||
_messageCenter.dispatchMessage(message, data);
|
||||
|
||||
$('iframe').each(function(index, frame) {
|
||||
//try,catch to handle permissions error in FF when loading pages from another domain
|
||||
try {
|
||||
if (frame.contentWindow.$axure && frame.contentWindow.$axure.messageCenter) {
|
||||
frame.contentWindow.$axure.messageCenter.dispatchMessageRecursively(message, data);
|
||||
}
|
||||
}catch(e) {}
|
||||
});
|
||||
};
|
||||
|
||||
var _combineEventMessages = false;
|
||||
var _compositeEventMessageData = [];
|
||||
_messageCenter.startCombineEventMessages = function() {
|
||||
_combineEventMessages = true;
|
||||
}
|
||||
|
||||
_messageCenter.endCombineEventMessages = function () {
|
||||
_messageCenter.sendCompositeEventMessage();
|
||||
_combineEventMessages = false;
|
||||
}
|
||||
|
||||
_messageCenter.sendCompositeEventMessage = function () {
|
||||
_messageCenter.postMessage('axCompositeEventMessage', _compositeEventMessageData);
|
||||
_compositeEventMessageData = [];
|
||||
}
|
||||
|
||||
_messageCenter.postMessage = function (message, data) {
|
||||
if(_combineEventMessages) {
|
||||
if(message == 'axEvent' || message == 'axCase' || message == 'axAction' || message == 'axEventComplete') {
|
||||
_compositeEventMessageData.push({ 'message': message, 'data': data });
|
||||
if(_compositeEventMessageData.length >= 10) _messageCenter.sendCompositeEventMessage();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if(!CHROME_5_LOCAL) {
|
||||
_topMessageCenter.dispatchMessageRecursively(message, data);
|
||||
} else {
|
||||
var request = {
|
||||
message: message,
|
||||
data: data
|
||||
};
|
||||
|
||||
if(_initialized) {
|
||||
var senderDiv = window.document.getElementById('axureEventSenderDiv');
|
||||
var messageText = JSON.stringify(request);
|
||||
senderDiv.innerText = messageText;
|
||||
senderDiv.dispatchEvent(_eventObject);
|
||||
} else {
|
||||
_queuedMessages[_queuedMessages.length] = request;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
_messageCenter.setState = function(key, value) {
|
||||
var data = {
|
||||
key: key,
|
||||
value: value
|
||||
};
|
||||
_messageCenter.postMessage('setState', data);
|
||||
};
|
||||
|
||||
_messageCenter.getState = function(key) {
|
||||
return _state[key];
|
||||
};
|
||||
|
||||
_messageCenter.addMessageListener = function(listener) {
|
||||
_listeners[_listeners.length] = listener;
|
||||
};
|
||||
|
||||
_messageCenter.addStateListener = function(key, listener) {
|
||||
_stateListeners[_stateListeners.length] = {
|
||||
key: key,
|
||||
listener: listener
|
||||
};
|
||||
};
|
||||
|
||||
})();
|
||||
206
接口说明/京西管理后台PC端/resources/scripts/player/axplayer.js
Normal file
@@ -0,0 +1,206 @@
|
||||
if (!window.$axure) window.$axure = function () { };
|
||||
if (typeof console == 'undefined') console = {
|
||||
log: function () { }
|
||||
};
|
||||
if(window._axUtils) $axure.utils = _axUtils;
|
||||
|
||||
$axure.loadDocument = function(document) {
|
||||
$axure.document = document;
|
||||
};
|
||||
|
||||
function setUpController() {
|
||||
|
||||
//$axure.utils = _axUtils;
|
||||
|
||||
var _page = {};
|
||||
$axure.page = _page;
|
||||
|
||||
$axure.utils.makeBindable(_page, ['load']);
|
||||
|
||||
var _player = function() {
|
||||
};
|
||||
$axure.player = _player;
|
||||
|
||||
//-----------------------------------------
|
||||
//Global Var array, getLinkUrl function and setGlobalVar listener are
|
||||
//for use in setting global vars in page url string when clicking a
|
||||
//page in the sitemap
|
||||
//-----------------------------------------
|
||||
var _globalVars = {};
|
||||
|
||||
//-----------------------------------------
|
||||
//Used by getLinkUrl below to check if local server is running
|
||||
//in order to send back the global variables as a query string
|
||||
//in the page url
|
||||
//-----------------------------------------
|
||||
var _shouldSendVarsToServer = function () {
|
||||
//If exception occurs (due to page in content frame being from a different domain, etc)
|
||||
//then run the check without the url (which will end up checking against sitemap url)
|
||||
try {
|
||||
var mainFrame = document.getElementById("mainFrame");
|
||||
return $axure.shouldSendVarsToServer(mainFrame.contentWindow.location.href);
|
||||
} catch (e) {
|
||||
return $axure.shouldSendVarsToServer();
|
||||
}
|
||||
};
|
||||
|
||||
var _getLinkUrl = function (baseUrl) {
|
||||
var toAdd = '';
|
||||
for(var globalVarName in _globalVars) {
|
||||
var val = _globalVars[globalVarName];
|
||||
if(val != null) {
|
||||
if(toAdd.length > 0) toAdd += '&';
|
||||
toAdd += globalVarName + '=' + encodeURIComponent(val);
|
||||
}
|
||||
}
|
||||
return toAdd.length > 0 ? baseUrl + (_shouldSendVarsToServer() ? '?' : '#') + toAdd + "&CSUM=1" : baseUrl;
|
||||
};
|
||||
$axure.getLinkUrlWithVars = _getLinkUrl;
|
||||
|
||||
$axure.messageCenter.addMessageListener(function(message, data) {
|
||||
if (message == 'setGlobalVar'){
|
||||
_globalVars[data.globalVarName] = data.globalVarValue;
|
||||
}
|
||||
});
|
||||
|
||||
$axure.messageCenter.addStateListener('page.data', function (key, value) {
|
||||
for (var subKey in value) {
|
||||
_page[subKey] = value[subKey];
|
||||
}
|
||||
$axure.page.triggerEvent('load');
|
||||
});
|
||||
|
||||
// ---------------------------------------------
|
||||
// Navigates the main frame (setting the currently visible page). If the link is relative,
|
||||
// this method should test if it is actually a axure rp page being loaded and properly set
|
||||
// up all the controller for the page if it is
|
||||
// ---------------------------------------------
|
||||
_page.navigate = function (url, includeVariables) {
|
||||
var mainFrame = document.getElementById("mainFrame");
|
||||
//var mainFrame = window.parent.mainFrame;
|
||||
// if this is a relative url...
|
||||
var urlToLoad;
|
||||
if (url.indexOf(':') < 0 || url[0] == '/') {
|
||||
var winHref = window.location.href;
|
||||
var page = winHref.substring(0, winHref.lastIndexOf('/') + 1) + url;
|
||||
urlToLoad = page;
|
||||
} else {
|
||||
urlToLoad = url;
|
||||
}
|
||||
if (!includeVariables) {
|
||||
mainFrame.contentWindow.location.href = urlToLoad;
|
||||
return;
|
||||
}
|
||||
var urlWithVars = $axure.getLinkUrlWithVars(urlToLoad);
|
||||
var currentData = $axure.messageCenter.getState('page.data');
|
||||
var currentUrl = currentData && currentData.location;
|
||||
if(currentUrl && currentUrl.indexOf('#') != -1) currentUrl = currentUrl.substring(0, currentUrl.indexOf('#'))
|
||||
|
||||
// this is so we can make sure the current frame reloads if the variables have changed
|
||||
// by default, if the location is the same but the hash code is different, the browser will not
|
||||
// trigger a reload
|
||||
mainFrame.contentWindow.location.href =
|
||||
currentUrl && urlToLoad.toLowerCase() != currentUrl.toLowerCase()
|
||||
? urlWithVars
|
||||
: 'resources/reload.html#' + encodeURI(urlWithVars);
|
||||
|
||||
};
|
||||
|
||||
var pluginIds = [];
|
||||
var plugins = {};
|
||||
var currentVisibleHostId = null;
|
||||
// ---------------------------------------------
|
||||
// Adds a tool box frame from a url to the interface. This is useful for loading plugins
|
||||
// settings is an object that supports the following properties:
|
||||
// - id : the id of the element for the plugin
|
||||
// - context : the context to create the plugin host for
|
||||
// - title : the user-visible caption for the plugin
|
||||
// ---------------------------------------------
|
||||
_player.createPluginHost = function (settings) {
|
||||
// right now we only understand an interface context
|
||||
if (!(!settings.context || settings.context === 'interface')) {
|
||||
throw ('unknown context type');
|
||||
}
|
||||
if (!settings.id) throw ('each plugin host needs an id');
|
||||
|
||||
var host = $('<div id=' + settings.id + '></div>')
|
||||
.appendTo('#interfaceControlFrameHostContainer');
|
||||
|
||||
host.hide();
|
||||
|
||||
var headerLink = $('<a pluginId="' + settings.id + '" >' + settings.title.toUpperCase() + '</a>');
|
||||
|
||||
headerLink
|
||||
.click($axure.utils.curry(interfaceControlHeaderButton_click, settings.id)).wrap('<li id="' + settings.id + 'Btn">');
|
||||
|
||||
if((settings.id == 'feedbackHost' || settings.id == 'feedbackContainer') && pluginIds[pluginIds.length - 1] == 'debugHost') headerLink.parent().insertBefore('#debugHostBtn');
|
||||
else headerLink.parent().appendTo('#interfaceControlFrameHeader');
|
||||
|
||||
pluginIds[pluginIds.length] = settings.id;
|
||||
plugins[settings.id] = settings;
|
||||
|
||||
$(document).trigger('pluginCreated', [settings.gid]);
|
||||
};
|
||||
|
||||
// private methods
|
||||
var interfaceControlHeaderButton_click = function (id) {
|
||||
var clickedPlugin = $('#interfaceControlFrameHeader a[pluginId=' + id + ']');
|
||||
if(clickedPlugin.hasClass('selected')) {
|
||||
clickedPlugin.removeClass('selected');
|
||||
$('#' + id).hide();
|
||||
_player.collapseToBar();
|
||||
|
||||
$(document).trigger('pluginShown',['']);
|
||||
} else {
|
||||
$('#interfaceControlFrameHeader a').removeClass('selected');
|
||||
clickedPlugin.addClass('selected');
|
||||
|
||||
$('#' + currentVisibleHostId).hide();
|
||||
$('#' + id).show();
|
||||
currentVisibleHostId = id;
|
||||
_player.expandFromBar();
|
||||
|
||||
$(document).trigger('pluginShown', [plugins[id].gid]);
|
||||
}
|
||||
|
||||
$(document).trigger('ContainerHeightChange');
|
||||
};
|
||||
|
||||
$axure.player.showPlugin = function(gid) {
|
||||
for(var id in plugins) {
|
||||
if(plugins[id].gid == gid) {
|
||||
$('a[pluginId="' + id + '"]').click();
|
||||
break;
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
function setUpDocumentStateManager() {
|
||||
var mgr = $axure.prototype.documentStateManager = {};
|
||||
$axure.utils.makeBindable(mgr, ['globalVariableChanged']);
|
||||
|
||||
mgr.globalVariableValues = {};
|
||||
|
||||
mgr.setGlobalVariable = function(varname, value, source) {
|
||||
var arg = {};
|
||||
arg.variableName = varname;
|
||||
arg.newValue = value;
|
||||
arg.oldValue = this.getGlobalVariable(varname);
|
||||
arg.source = source;
|
||||
|
||||
mgr.globalVariableValues[varname] = value;
|
||||
this.triggerEvent('globalVariableChanged', arg);
|
||||
};
|
||||
|
||||
mgr.getGlobalVariable = function(varname) {
|
||||
return mgr.globalVariableValues[varname];
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
function setUpPageStateManager() {
|
||||
var mgr = $axure.prototype.pageStateManager = {};
|
||||
|
||||
mgr.panelToStateIds = {};
|
||||
}
|
||||
218
接口说明/京西管理后台PC端/resources/scripts/player/splitter.js
Normal file
@@ -0,0 +1,218 @@
|
||||
/*
|
||||
* jQuery.splitter.js - two-pane splitter window plugin
|
||||
*
|
||||
* version 1.51 (2009/01/09)
|
||||
*
|
||||
* Dual licensed under the MIT and GPL licenses:
|
||||
* http://www.opensource.org/licenses/mit-license.php
|
||||
* http://www.gnu.org/licenses/gpl.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* The splitter() plugin implements a two-pane resizable splitter window.
|
||||
* The selected elements in the jQuery object are converted to a splitter;
|
||||
* each selected element should have two child elements, used for the panes
|
||||
* of the splitter. The plugin adds a third child element for the splitbar.
|
||||
*
|
||||
* For more details see: http://methvin.com/splitter/
|
||||
*
|
||||
*
|
||||
* @example $('#MySplitter').splitter();
|
||||
* @desc Create a vertical splitter with default settings
|
||||
*
|
||||
* @example $('#MySplitter').splitter({type: 'h', accessKey: 'M'});
|
||||
* @desc Create a horizontal splitter resizable via Alt+Shift+M
|
||||
*
|
||||
* @name splitter
|
||||
* @type jQuery
|
||||
* @param Object options Options for the splitter (not required)
|
||||
* @cat Plugins/Splitter
|
||||
* @return jQuery
|
||||
* @author Dave Methvin (dave.methvin@gmail.com)
|
||||
*/
|
||||
;(function($){
|
||||
|
||||
$.fn.splitter = function(args){
|
||||
args = args || {};
|
||||
return this.each(function() {
|
||||
var zombie; // left-behind splitbar for outline resizes
|
||||
function startSplitMouse(evt) {
|
||||
if ( opts.outline )
|
||||
zombie = zombie || bar.clone(false).insertAfter(A);
|
||||
panes.css("-webkit-user-select", "none"); // Safari selects A/B text on a move
|
||||
bar.addClass(opts.activeClass);
|
||||
$('<div class="splitterMask"></div>').insertAfter(bar);
|
||||
A._posSplit = A[0][opts.pxSplit] - evt[opts.eventPos];
|
||||
$(document)
|
||||
.bind("mousemove", doSplitMouse)
|
||||
.bind("mouseup", endSplitMouse);
|
||||
}
|
||||
function doSplitMouse(evt) {
|
||||
var newPos = A._posSplit+evt[opts.eventPos];
|
||||
if ( opts.outline ) {
|
||||
newPos = Math.max(0, Math.min(newPos, splitter._DA - bar._DA));
|
||||
bar.css(opts.origin, newPos);
|
||||
} else
|
||||
resplit(newPos);
|
||||
}
|
||||
function endSplitMouse(evt) {
|
||||
$('div.splitterMask').remove();
|
||||
bar.removeClass(opts.activeClass);
|
||||
var newPos = A._posSplit+evt[opts.eventPos];
|
||||
if ( opts.outline ) {
|
||||
zombie.remove(); zombie = null;
|
||||
resplit(newPos);
|
||||
}
|
||||
panes.css("-webkit-user-select", "text"); // let Safari select text again
|
||||
$(document)
|
||||
.unbind("mousemove", doSplitMouse)
|
||||
.unbind("mouseup", endSplitMouse);
|
||||
}
|
||||
function resplit(newPos) {
|
||||
// Constrain new splitbar position to fit pane size limits
|
||||
newPos = Math.max(A._min, splitter._DA - B._max,
|
||||
Math.min(newPos, A._max, splitter._DA - bar._DA - B._min));
|
||||
// Resize/position the two panes
|
||||
bar._DA = bar[0][opts.pxSplit]; // bar size may change during dock
|
||||
|
||||
var posOffset = bar.is(':visible') ? bar._DA - 1 : 0;
|
||||
|
||||
bar.css(opts.origin, newPos - posOffset).css(opts.fixed, splitter._DF);
|
||||
A.css(opts.origin, 0).css(opts.split, newPos).css(opts.fixed, splitter._DF);
|
||||
B.css(opts.origin, newPos + bar._DA - posOffset)
|
||||
.css(opts.split, splitter._DA-bar._DA-newPos).css(opts.fixed, splitter._DF);
|
||||
// IE fires resize for us; all others pay cash
|
||||
if ( !IE_10_AND_BELOW )
|
||||
panes.trigger("resize");
|
||||
}
|
||||
function dimSum(jq, dims) {
|
||||
// Opera returns -1 for missing min/max width, turn into 0
|
||||
var sum = 0;
|
||||
for ( var i=1; i < arguments.length; i++ )
|
||||
sum += Math.max(parseInt(jq.css(arguments[i])) || 0, 0);
|
||||
return sum;
|
||||
}
|
||||
|
||||
// Determine settings based on incoming opts, element classes, and defaults
|
||||
var vh = (args.splitHorizontal? 'h' : args.splitVertical? 'v' : args.type) || 'v';
|
||||
var opts = $.extend({
|
||||
activeClass: 'active', // class name for active splitter
|
||||
pxPerKey: 8, // splitter px moved per keypress
|
||||
tabIndex: 0, // tab order indicator
|
||||
accessKey: '' // accessKey for splitbar
|
||||
},{
|
||||
v: { // Vertical splitters:
|
||||
keyLeft: 39, keyRight: 37, cursor: "col-resize",
|
||||
splitbarClass: "vsplitbar", outlineClass: "voutline",
|
||||
type: 'v', eventPos: "pageX", origin: "left",
|
||||
split: "width", pxSplit: "offsetWidth", side1: "Left", side2: "Right",
|
||||
fixed: "height", pxFixed: "offsetHeight", side3: "Top", side4: "Bottom"
|
||||
},
|
||||
h: { // Horizontal splitters:
|
||||
keyTop: 40, keyBottom: 38, cursor: "row-resize",
|
||||
splitbarClass: "hsplitbar", outlineClass: "houtline",
|
||||
type: 'h', eventPos: "pageY", origin: "top",
|
||||
split: "height", pxSplit: "offsetHeight", side1: "Top", side2: "Bottom",
|
||||
fixed: "width", pxFixed: "offsetWidth", side3: "Left", side4: "Right"
|
||||
}
|
||||
}[vh], args);
|
||||
|
||||
// Create jQuery object closures for splitter and both panes
|
||||
var splitter = $(this).css({position: "relative"});
|
||||
var panes = $(">*", splitter[0]).css({
|
||||
position: "absolute", // positioned inside splitter container
|
||||
"z-index": "1", // splitbar is positioned above
|
||||
"-moz-outline-style": "none" // don't show dotted outline
|
||||
});
|
||||
var A = $(panes[0]); // left or top
|
||||
var B = $(panes[1]); // right or bottom
|
||||
|
||||
// Focuser element, provides keyboard support; title is shown by Opera accessKeys
|
||||
var focuser = $('<a href="javascript:void(0)"></a>')
|
||||
.attr({accessKey: opts.accessKey, tabIndex: opts.tabIndex, title: opts.splitbarClass})
|
||||
.bind($.browser.opera?"click":"focus", function(){ this.focus(); bar.addClass(opts.activeClass) })
|
||||
.bind("keydown", function(e){
|
||||
var key = e.which || e.keyCode;
|
||||
var dir = key==opts["key"+opts.side1]? 1 : key==opts["key"+opts.side2]? -1 : 0;
|
||||
if ( dir )
|
||||
resplit(A[0][opts.pxSplit]+dir*opts.pxPerKey, false);
|
||||
})
|
||||
.bind("blur", function(){ bar.removeClass(opts.activeClass) });
|
||||
|
||||
// Splitbar element, can be already in the doc or we create one
|
||||
var bar = $(panes[2] || '<div></div>')
|
||||
.insertAfter(A).css("z-index", "100").append(focuser)
|
||||
.attr({"class": opts.splitbarClass, unselectable: "on"})
|
||||
.css({position: "absolute", "user-select": "none", "-webkit-user-select": "none",
|
||||
"-khtml-user-select": "none", "-moz-user-select": "none", "top": "0px"})
|
||||
.bind("mousedown", startSplitMouse);
|
||||
// Use our cursor unless the style specifies a non-default cursor
|
||||
if ( /^(auto|default|)$/.test(bar.css("cursor")) )
|
||||
bar.css("cursor", opts.cursor);
|
||||
|
||||
// Cache several dimensions for speed, rather than re-querying constantly
|
||||
bar._DA = bar[0][opts.pxSplit];
|
||||
splitter._PBF = $.boxModel? dimSum(splitter, "border"+opts.side3+"Width", "border"+opts.side4+"Width") : 0;
|
||||
splitter._PBA = $.boxModel? dimSum(splitter, "border"+opts.side1+"Width", "border"+opts.side2+"Width") : 0;
|
||||
A._pane = opts.side1;
|
||||
B._pane = opts.side2;
|
||||
$.each([A,B], function(){
|
||||
this._min = opts["min"+this._pane] || dimSum(this, "min-"+opts.split);
|
||||
this._max = opts["max"+this._pane] || dimSum(this, "max-"+opts.split) || 9999;
|
||||
this._init = opts["size"+this._pane]===true ?
|
||||
parseInt($.curCSS(this[0],opts.split)) : opts["size"+this._pane];
|
||||
});
|
||||
|
||||
// Determine initial position, get from cookie if specified
|
||||
var initPos = A._init;
|
||||
if ( !isNaN(B._init) ) // recalc initial B size as an offset from the top or left side
|
||||
initPos = splitter[0][opts.pxSplit] - splitter._PBA - B._init - bar._DA;
|
||||
if ( opts.cookie ) {
|
||||
if ( !$.cookie )
|
||||
alert('jQuery.splitter(): jQuery cookie plugin required');
|
||||
var ckpos = parseInt($.cookie(opts.cookie));
|
||||
if ( !isNaN(ckpos) )
|
||||
initPos = ckpos;
|
||||
$(window).bind("unload", function(){
|
||||
var state = String(bar.css(opts.origin)); // current location of splitbar
|
||||
$.cookie(opts.cookie, state, {expires: opts.cookieExpires || 365,
|
||||
path: opts.cookiePath || document.location.pathname});
|
||||
});
|
||||
}
|
||||
if ( isNaN(initPos) ) // King Solomon's algorithm
|
||||
initPos = Math.round((splitter[0][opts.pxSplit] - splitter._PBA - bar._DA)/2);
|
||||
|
||||
// Resize event propagation and splitter sizing
|
||||
if ( opts.anchorToWindow ) {
|
||||
// Account for margin or border on the splitter container and enforce min height
|
||||
splitter._hadjust = dimSum(splitter, "borderTopWidth", "borderBottomWidth", "marginBottom");
|
||||
splitter._hmin = Math.max(dimSum(splitter, "minHeight"), 20);
|
||||
$(window).bind("resize", function(){
|
||||
var top = splitter.offset().top;
|
||||
var wh = $(window).height();
|
||||
splitter.css("height", Math.max(wh-top-splitter._hadjust, splitter._hmin)+"px");
|
||||
if ( !IE_10_AND_BELOW ) splitter.trigger("resize");
|
||||
}).trigger("resize");
|
||||
}
|
||||
else if ( opts.resizeToWidth && !IE_10_AND_BELOW )
|
||||
$(window).bind("resize", function(){
|
||||
splitter.trigger("resize");
|
||||
});
|
||||
|
||||
// Resize event handler; triggered immediately to set initial position
|
||||
splitter.bind("resize", function(e, size){
|
||||
// Custom events bubble in jQuery 1.3; don't Yo Dawg
|
||||
if ( e.target != this ) return;
|
||||
// Determine new width/height of splitter container
|
||||
splitter._DF = splitter[0][opts.pxFixed] - splitter._PBF;
|
||||
splitter._DA = splitter[0][opts.pxSplit] - splitter._PBA;
|
||||
// Bail if splitter isn't visible or content isn't there yet
|
||||
if ( splitter._DF <= 0 || splitter._DA <= 0 ) return;
|
||||
// Re-divvy the adjustable dimension; maintain size of the preferred pane
|
||||
resplit(!isNaN(size)? size : (!(opts.sizeRight||opts.sizeBottom)? A[0][opts.pxSplit] :
|
||||
splitter._DA-B[0][opts.pxSplit]-bar._DA));
|
||||
}).trigger("resize" , [initPos]);
|
||||
});
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
13208
接口说明/京西管理后台PC端/resources/scripts/prototypePost.js
vendored
Normal file
3075
接口说明/京西管理后台PC端/resources/scripts/prototypePre.js
vendored
Normal file
818
接口说明/京西管理后台PC端/resources/scripts/startPost.js
Normal file
@@ -0,0 +1,818 @@
|
||||
// 8.0.0.3377. Generated 6/6/2018 6:37:57 PM UTC
|
||||
|
||||
//***** sitemap.js *****//
|
||||
var currentNodeUrl = '';
|
||||
var allNodeUrls = [];
|
||||
|
||||
function openNextPage() {
|
||||
var index = allNodeUrls.indexOf(currentNodeUrl) + 1;
|
||||
if(index >= allNodeUrls.length) return;
|
||||
var nextNodeUrl = allNodeUrls[index];
|
||||
$('.sitemapPageLink[nodeUrl="' + nextNodeUrl + '"]').click();
|
||||
}
|
||||
|
||||
function openPreviousPage() {
|
||||
var index = allNodeUrls.indexOf(currentNodeUrl) - 1;
|
||||
if(index < 0) return;
|
||||
var nextNodeUrl = allNodeUrls[index];
|
||||
$('.sitemapPageLink[nodeUrl="' + nextNodeUrl + '"]').click();
|
||||
}
|
||||
|
||||
// use this to isolate the scope
|
||||
(function() {
|
||||
|
||||
var SHOW_HIDE_ANIMATION_DURATION = 0;
|
||||
|
||||
var HIGHLIGHT_INTERACTIVE_VAR_NAME = 'hi';
|
||||
|
||||
var currentPageLoc = '';
|
||||
var currentPlayerLoc = '';
|
||||
var currentPageHashString = '';
|
||||
|
||||
$(window.document).ready(function() {
|
||||
$axure.player.createPluginHost({
|
||||
id: 'sitemapHost',
|
||||
context: 'interface',
|
||||
title: 'PAGES',
|
||||
gid: 1
|
||||
});
|
||||
|
||||
generateSitemap();
|
||||
|
||||
$('.sitemapPlusMinusLink').toggle(collapse_click, expand_click);
|
||||
$('.sitemapPageLink').click(node_click);
|
||||
|
||||
$('#sitemapLinksContainer').hide();
|
||||
$('#linksButton').click(links_click);
|
||||
$('#adaptiveButton').click(adaptive_click);
|
||||
$('#adaptiveViewsContainer').hide();
|
||||
|
||||
$('#highlightInteractiveButton').click(highlight_interactive);
|
||||
$('#searchButton').click(search_click);
|
||||
$('#searchBox').keyup(search_input_keyup);
|
||||
$('.sitemapLinkField').click(function() { this.select(); });
|
||||
$('input[value="withoutmap"]').click(withoutSitemapRadio_click);
|
||||
$('input[value="withmap"]').click(withSitemapRadio_click);
|
||||
$('#minimizeBox, #collapseBox, #footnotesBox, #highlightBox').change(sitemapUrlOptions_change);
|
||||
$('#viewSelect').change(sitemapUrlViewSelect_change);
|
||||
|
||||
$(document).on('ContainerHeightChange', function() {
|
||||
updateContainerHeight();
|
||||
});
|
||||
|
||||
// bind to the page load
|
||||
$axure.page.bind('load.sitemap', function() {
|
||||
currentPageLoc = $axure.page.location.split("#")[0];
|
||||
var decodedPageLoc = decodeURI(currentPageLoc);
|
||||
currentNodeUrl = decodedPageLoc.substr(decodedPageLoc.lastIndexOf('/') ? decodedPageLoc.lastIndexOf('/') + 1 : 0);
|
||||
currentPlayerLoc = $(location).attr('href').split("#")[0].split("?")[0];
|
||||
currentPageHashString = '#p=' + currentNodeUrl.substr(0, currentNodeUrl.lastIndexOf('.'));
|
||||
|
||||
setVarInCurrentUrlHash('p', currentNodeUrl.substring(0, currentNodeUrl.lastIndexOf('.html')));
|
||||
|
||||
$('.sitemapPageLink').parent().parent().removeClass('sitemapHighlight');
|
||||
$('.sitemapPageLink[nodeUrl="' + currentNodeUrl + '"]').parent().parent().addClass('sitemapHighlight');
|
||||
|
||||
var pageName = $axure.page.pageName;
|
||||
$('.pageNameHeader').html(pageName);
|
||||
|
||||
$('#sitemapLinksPageName').html($('.sitemapHighlight > .sitemapPageLinkContainer > .sitemapPageLink > .sitemapPageName').html());
|
||||
|
||||
//Click the "Without sitemap" radio button so that it's selected by default
|
||||
$('input[value="withoutmap"]').click();
|
||||
|
||||
//If highlight var is present and set to 1 or else if
|
||||
//sitemap highlight button is selected then highlight interactive elements
|
||||
var hiVal = getHashStringVar(HIGHLIGHT_INTERACTIVE_VAR_NAME);
|
||||
if(hiVal.length > 0 && hiVal == 1) {
|
||||
$('#highlightInteractiveButton').addClass('sitemapToolbarButtonSelected');
|
||||
$axure.messageCenter.postMessage('highlightInteractive', true);
|
||||
} else if($('#highlightInteractiveButton').is('.sitemapToolbarButtonSelected')) {
|
||||
$axure.messageCenter.postMessage('highlightInteractive', true);
|
||||
}
|
||||
|
||||
//Set the current view if it is defined in the hash string
|
||||
//If the view is invalid, set it to 'auto' in the string
|
||||
//ELSE set the view based on the currently selected view in the toolbar menu
|
||||
var viewStr = getHashStringVar(ADAPTIVE_VIEW_VAR_NAME);
|
||||
if(viewStr.length > 0) {
|
||||
var $view = $('.adaptiveViewOption[val="' + viewStr + '"]');
|
||||
if($view.length > 0) $view.click();
|
||||
else $('.adaptiveViewOption[val="auto"]').click();
|
||||
} else if($('.checkedAdaptive').length > 0) {
|
||||
var $viewOption = $('.checkedAdaptive').parents('.adaptiveViewOption');
|
||||
if($viewOption.attr('val') != 'auto') $viewOption.click();
|
||||
}
|
||||
|
||||
$axure.messageCenter.postMessage('finishInit');
|
||||
|
||||
return false;
|
||||
});
|
||||
|
||||
var $adaptiveViewsContainer = $('#adaptiveViewsContainer');
|
||||
var $viewSelect = $('#viewSelect');
|
||||
|
||||
//Fill out adaptive view container with prototype's defined adaptive views, as well as the default, and Auto
|
||||
$adaptiveViewsContainer.append('<div class="adaptiveViewOption" val="auto"><div class="adaptiveCheckboxDiv checkedAdaptive"></div>Auto</div>');
|
||||
$viewSelect.append('<option value="auto">Auto</option>');
|
||||
if(typeof $axure.document.defaultAdaptiveView.name != 'undefined') {
|
||||
//If the name is a blank string, make the view name the width if non-zero, else 'any'
|
||||
var defaultViewName = $axure.document.defaultAdaptiveView.name;
|
||||
$adaptiveViewsContainer.append('<div class="adaptiveViewOption currentAdaptiveView" val="default"><div class="adaptiveCheckboxDiv"></div>' + defaultViewName + '</div>');
|
||||
$viewSelect.append('<option value="default">' + defaultViewName + '</option>');
|
||||
}
|
||||
|
||||
var enabledViewIds = $axure.document.configuration.enabledViewIds;
|
||||
for(var viewIndex = 0; viewIndex < $axure.document.adaptiveViews.length; viewIndex++) {
|
||||
var currView = $axure.document.adaptiveViews[viewIndex];
|
||||
if(enabledViewIds.indexOf(currView.id) < 0) continue;
|
||||
|
||||
var widthString = currView.size.width == 0 ? 'any' : currView.size.width;
|
||||
var heightString = currView.size.height == 0 ? 'any' : currView.size.height;
|
||||
var conditionString = '';
|
||||
if(currView.condition == '>' || currView.condition == '>=') {
|
||||
conditionString = ' and above';
|
||||
} else if(currView.condition == '<' || currView.condition == '<=') {
|
||||
conditionString = ' and below';
|
||||
}
|
||||
|
||||
var viewString = currView.name + ' (' + widthString + ' x ' + heightString + conditionString + ')';
|
||||
$adaptiveViewsContainer.append('<div class="adaptiveViewOption" val="' + currView.id + '"><div class="adaptiveCheckboxDiv"></div>' + viewString + '</div>');
|
||||
$viewSelect.append('<option value="' + currView.id + '">' + viewString + '</option>');
|
||||
}
|
||||
|
||||
$('.adaptiveViewOption').click(adaptiveViewOption_click);
|
||||
|
||||
$('.adaptiveViewOption').mouseup(function(event) {
|
||||
event.stopPropagation();
|
||||
});
|
||||
|
||||
$('#searchBox').focusin(function() {
|
||||
if($(this).is('.searchBoxHint')) {
|
||||
$(this).val('');
|
||||
$(this).removeClass('searchBoxHint');
|
||||
}
|
||||
}).focusout(function() {
|
||||
if($(this).val() == '') {
|
||||
$(this).addClass('searchBoxHint');
|
||||
$(this).val('Search');
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
$('#searchBox').focusout();
|
||||
});
|
||||
|
||||
function updateContainerHeight() {
|
||||
$('#sitemapTreeContainer').height($('#sitemapHost').height() - $('#sitemapHeader').outerHeight());
|
||||
}
|
||||
|
||||
function hideAllContainersExcept(exceptContainer) {
|
||||
//1 - adaptive container, 3 - links container
|
||||
if(exceptContainer != 1) {
|
||||
$('#adaptiveViewsContainer').hide();
|
||||
$('#adaptiveButton').removeClass('sitemapToolbarButtonSelected');
|
||||
}
|
||||
if(exceptContainer != 3) {
|
||||
$('#sitemapLinksContainer').hide();
|
||||
$('#linksButton').removeClass('sitemapToolbarButtonSelected');
|
||||
}
|
||||
}
|
||||
|
||||
function collapse_click(event) {
|
||||
$(this)
|
||||
.children('.sitemapMinus').removeClass('sitemapMinus').addClass('sitemapPlus').end()
|
||||
.closest('li').children('ul').hide(SHOW_HIDE_ANIMATION_DURATION);
|
||||
}
|
||||
|
||||
function expand_click(event) {
|
||||
$(this)
|
||||
.children('.sitemapPlus').removeClass('sitemapPlus').addClass('sitemapMinus').end()
|
||||
.closest('li').children('ul').show(SHOW_HIDE_ANIMATION_DURATION);
|
||||
}
|
||||
|
||||
function node_click(event) {
|
||||
$axure.page.navigate(this.getAttribute('nodeUrl'), true);
|
||||
}
|
||||
|
||||
function links_click(event) {
|
||||
hideAllContainersExcept(3);
|
||||
$('#sitemapLinksContainer').toggle();
|
||||
updateContainerHeight();
|
||||
if($('#sitemapLinksContainer').is(":visible")) {
|
||||
$('#linksButton').addClass('sitemapToolbarButtonSelected');
|
||||
} else {
|
||||
$('#linksButton').removeClass('sitemapToolbarButtonSelected');
|
||||
}
|
||||
}
|
||||
|
||||
$axure.messageCenter.addMessageListener(function(message, data) {
|
||||
if(message == 'adaptiveViewChange') {
|
||||
$('.adaptiveViewOption').removeClass('currentAdaptiveView');
|
||||
if(data.viewId) {$('div[val="' + data.viewId + '"]').addClass('currentAdaptiveView');}
|
||||
else $('div[val="default"]').addClass('currentAdaptiveView');
|
||||
|
||||
//when we set adaptive view through user event, we want to update the checkmark on sitemap
|
||||
if(data.forceSwitchTo) {
|
||||
$('.checkedAdaptive').removeClass('checkedAdaptive');
|
||||
$('div[val="' + data.forceSwitchTo + '"]').find('.adaptiveCheckboxDiv').addClass('checkedAdaptive');
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
$(document).on('pluginShown', function (event, data) {
|
||||
if(data == 1) {
|
||||
hideAllContainersExcept(1);
|
||||
updateContainerHeight();
|
||||
}
|
||||
});
|
||||
|
||||
$(document).on('sidebarExpanded', function (event, data) {
|
||||
hideAllContainersExcept(1);
|
||||
updateContainerHeight();
|
||||
});
|
||||
|
||||
function highlight_interactive(event) {
|
||||
if($('#highlightInteractiveButton').is('.sitemapToolbarButtonSelected')) {
|
||||
$('#highlightInteractiveButton').removeClass('sitemapToolbarButtonSelected');
|
||||
$axure.messageCenter.postMessage('highlightInteractive', false);
|
||||
//Delete 'hi' hash string var if it exists since default is unselected
|
||||
deleteVarFromCurrentUrlHash(HIGHLIGHT_INTERACTIVE_VAR_NAME);
|
||||
} else {
|
||||
$('#highlightInteractiveButton').addClass('sitemapToolbarButtonSelected');
|
||||
$axure.messageCenter.postMessage('highlightInteractive', true);
|
||||
//Add 'hi' hash string var so that stay highlighted across reloads
|
||||
setVarInCurrentUrlHash(HIGHLIGHT_INTERACTIVE_VAR_NAME, 1);
|
||||
}
|
||||
}
|
||||
|
||||
function adaptive_click(event) {
|
||||
hideAllContainersExcept(1);
|
||||
$('#adaptiveViewsContainer').toggle();
|
||||
updateContainerHeight();
|
||||
if(!$('#adaptiveViewsContainer').is(":visible")) {
|
||||
$('#adaptiveButton').removeClass('sitemapToolbarButtonSelected');
|
||||
} else {
|
||||
$('#adaptiveButton').addClass('sitemapToolbarButtonSelected');
|
||||
}
|
||||
}
|
||||
|
||||
function adaptiveViewOption_click(event) {
|
||||
var currVal = $(this).attr('val');
|
||||
|
||||
$('.checkedAdaptive').removeClass('checkedAdaptive');
|
||||
$(this).find('.adaptiveCheckboxDiv').addClass('checkedAdaptive');
|
||||
|
||||
currentPageLoc = $axure.page.location.split("#")[0];
|
||||
var decodedPageLoc = decodeURI(currentPageLoc);
|
||||
var nodeUrl = decodedPageLoc.substr(decodedPageLoc.lastIndexOf('/') ? decodedPageLoc.lastIndexOf('/') + 1 : 0);
|
||||
var adaptiveData = {
|
||||
src: nodeUrl
|
||||
};
|
||||
|
||||
adaptiveData.view = currVal;
|
||||
$axure.messageCenter.postMessage('switchAdaptiveView', adaptiveData);
|
||||
|
||||
if(currVal == 'auto') {
|
||||
//Remove view in hash string if one is set
|
||||
deleteVarFromCurrentUrlHash(ADAPTIVE_VIEW_VAR_NAME);
|
||||
} else {
|
||||
//Set current view in hash string so that it can be maintained across reloads
|
||||
setVarInCurrentUrlHash(ADAPTIVE_VIEW_VAR_NAME, currVal);
|
||||
}
|
||||
}
|
||||
|
||||
function search_click(event) {
|
||||
$('#searchDiv').toggle();
|
||||
if(!$('#searchDiv').is(":visible")) {
|
||||
$('#searchButton').removeClass('sitemapToolbarButtonSelected');
|
||||
$('#searchBox').val('');
|
||||
$('#searchBox').keyup();
|
||||
//$('#sitemapToolbar').css('height', '22px');
|
||||
$('#sitemapTreeContainer').css('top', '31px');
|
||||
} else {
|
||||
$('#searchButton').addClass('sitemapToolbarButtonSelected');
|
||||
$('#searchBox').focus();
|
||||
//$('#sitemapToolbar').css('height', '50px');
|
||||
$('#sitemapTreeContainer').css('top', '63px');
|
||||
}
|
||||
}
|
||||
|
||||
function search_input_keyup(event) {
|
||||
var searchVal = $(this).val().toLowerCase();
|
||||
//If empty search field, show all nodes, else grey+hide all nodes and
|
||||
//ungrey+unhide all matching nodes, as well as unhide their parent nodes
|
||||
if(searchVal == '') {
|
||||
$('.sitemapPageName').removeClass('sitemapGreyedName');
|
||||
$('.sitemapNode').show();
|
||||
} else {
|
||||
$('.sitemapNode').hide();
|
||||
|
||||
$('.sitemapPageName').addClass('sitemapGreyedName').each(function() {
|
||||
var nodeName = $(this).text().toLowerCase();
|
||||
if(nodeName.indexOf(searchVal) != -1) {
|
||||
$(this).removeClass('sitemapGreyedName').parents('.sitemapNode:first').show().parents('.sitemapExpandableNode').show();
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
function withoutSitemapRadio_click() {
|
||||
$('#sitemapLinkWithPlayer').val(currentPageLoc);
|
||||
$('#sitemapOptionsDiv').hide();
|
||||
$('#minimizeBox').attr('disabled', 'disabled');
|
||||
$('#collapseBox').attr('disabled', 'disabled');
|
||||
$('#footnotesBox').attr('disabled', 'disabled');
|
||||
$('#highlightBox').attr('disabled', 'disabled');
|
||||
$('#viewSelect').attr('disabled', 'disabled');
|
||||
$('input[value="withmap"]').parent().removeClass('sitemapRadioSelected');
|
||||
|
||||
updateContainerHeight();
|
||||
}
|
||||
|
||||
function withSitemapRadio_click() {
|
||||
$('#sitemapLinkWithPlayer').val(currentPlayerLoc + currentPageHashString);
|
||||
$('#minimizeBox').removeAttr('disabled').change();
|
||||
$('#collapseBox').removeAttr('disabled').change();
|
||||
$('#footnotesBox').removeAttr('disabled').change();
|
||||
$('#highlightBox').removeAttr('disabled').change();
|
||||
$('#viewSelect').removeAttr('disabled').change();
|
||||
$('#sitemapOptionsDiv').show();
|
||||
$('input[value="withmap"]').parent().addClass('sitemapRadioSelected');
|
||||
|
||||
updateContainerHeight();
|
||||
}
|
||||
|
||||
function sitemapUrlOptions_change() {
|
||||
var currLinkHash = '#' + $('#sitemapLinkWithPlayer').val().split("#")[1];
|
||||
var newHash = null;
|
||||
var varName = '';
|
||||
var defVal = 1;
|
||||
if($(this).is('#minimizeBox')) {
|
||||
varName = SITEMAP_COLLAPSE_VAR_NAME;
|
||||
} else if($(this).is('#collapseBox')) {
|
||||
varName = PLUGIN_VAR_NAME;
|
||||
defVal = 0;
|
||||
} else if($(this).is('#footnotesBox')) {
|
||||
varName = FOOTNOTES_VAR_NAME;
|
||||
defVal = 0;
|
||||
} else if($(this).is('#highlightBox')) {
|
||||
varName = HIGHLIGHT_INTERACTIVE_VAR_NAME;
|
||||
}
|
||||
|
||||
newHash = $(this).is(':checked') ? setHashStringVar(currLinkHash, varName, defVal) : deleteHashStringVar(currLinkHash, varName);
|
||||
|
||||
if(newHash != null) {
|
||||
$('#sitemapLinkWithPlayer').val(currentPlayerLoc + newHash);
|
||||
}
|
||||
}
|
||||
|
||||
function sitemapUrlViewSelect_change() {
|
||||
var currLinkHash = '#' + $('#sitemapLinkWithPlayer').val().split("#")[1];
|
||||
var newHash = null;
|
||||
var $selectedOption = $(this).find('option:selected');
|
||||
if($selectedOption.length == 0) return;
|
||||
var selectedVal = $selectedOption.attr('value');
|
||||
|
||||
newHash = selectedVal == 'auto' ? deleteHashStringVar(currLinkHash, ADAPTIVE_VIEW_VAR_NAME) : setHashStringVar(currLinkHash, ADAPTIVE_VIEW_VAR_NAME, selectedVal);
|
||||
|
||||
if(newHash != null) {
|
||||
$('#sitemapLinkWithPlayer').val(currentPlayerLoc + newHash);
|
||||
}
|
||||
}
|
||||
|
||||
function generateSitemap() {
|
||||
var treeUl = "<div id='sitemapHeader'' class='sitemapHeader'>";
|
||||
treeUl += "<div id='sitemapToolbar' class='sitemapToolbar'>";
|
||||
treeUl += "<div class='pluginNameHeader'>PAGES</div>";
|
||||
treeUl += "<div class='pageNameHeader'></div>";
|
||||
|
||||
treeUl += "<div class='pageButtonHeader'>";
|
||||
|
||||
if($axure.document.configuration.enabledViewIds.length > 0) {
|
||||
treeUl += "<a id='adaptiveButton' title='Select Adaptive View' class='sitemapToolbarButton'></a>";
|
||||
}
|
||||
|
||||
treeUl += "<a id='linksButton' title='Get Links' class='sitemapToolbarButton'></a>";
|
||||
treeUl += "<a id='highlightInteractiveButton' title='Highlight interactive elements' class='sitemapToolbarButton'></a>";
|
||||
treeUl += "</div>";
|
||||
|
||||
treeUl += "</div>";
|
||||
|
||||
if($axure.document.adaptiveViews.length > 0) {
|
||||
treeUl += "<div id='adaptiveViewsContainer'><div style='margin-bottom:10px;'>Adaptive Views</div></div>";
|
||||
}
|
||||
|
||||
//linkcontainer
|
||||
treeUl += "<div id='sitemapLinksContainer' class='sitemapLinkContainer'>";
|
||||
treeUl += "<div style='margin-bottom:10px;'>Generate sharable URLs</div>";
|
||||
treeUl += "<input id='sitemapLinkWithPlayer' type='text' class='sitemapLinkField'/>";
|
||||
treeUl += "<div class='sitemapOptionContainer'>";
|
||||
treeUl += "<div><label><input type='radio' name='sitemapToggle' value='withoutmap'/>Without Sidebar</label></div>";
|
||||
treeUl += "<div style='margin-top:10px;'><label><input type='radio' name='sitemapToggle' value='withmap'/>With Sidebar</label>";
|
||||
|
||||
treeUl += "<div id='sitemapOptionsDiv'>";
|
||||
treeUl += "<div class='sitemapUrlOption'><label><input type='checkbox' id='minimizeBox' />Minimize sidebar</label></div>";
|
||||
treeUl += "<div class='sitemapUrlOption'><label><input type='checkbox' id='collapseBox' />Pages closed</label></div>";
|
||||
if($axure.document.configuration.showAnnotations == true) {
|
||||
treeUl += "<div class='sitemapUrlOption'><label><input type='checkbox' id='footnotesBox' />Hide footnotes</label></div>";
|
||||
}
|
||||
|
||||
treeUl += "<div class='sitemapUrlOption'><label><input type='checkbox' id='highlightBox' />Highlight interactive elements</label></div>";
|
||||
|
||||
if($axure.document.configuration.enabledViewIds.length > 0) {
|
||||
treeUl += "<div id='viewSelectDiv' class='sitemapUrlOption'><label>View: <select id='viewSelect'></select></label></div>";
|
||||
}
|
||||
|
||||
treeUl += "</div></div></div></div>";
|
||||
/////////////////
|
||||
|
||||
treeUl += "</div>";
|
||||
|
||||
treeUl += "<div id='sitemapTreeContainer'>";
|
||||
|
||||
treeUl += '<div id="searchDiv" style=""><input id="searchBox" style="" type="text"/></div>';
|
||||
|
||||
treeUl += "<ul class='sitemapTree' style='clear:both;'>";
|
||||
var rootNodes = $axure.document.sitemap.rootNodes;
|
||||
for(var i = 0; i < rootNodes.length; i++) {
|
||||
treeUl += generateNode(rootNodes[i], 0);
|
||||
}
|
||||
treeUl += "</ul></div>";
|
||||
|
||||
$('#sitemapHost').html(treeUl);
|
||||
if($axure.document.adaptiveViews.length <= 0) {
|
||||
$('#sitemapHost .pageNameHeader').css('padding-right', '55px');
|
||||
}
|
||||
}
|
||||
|
||||
function generateNode(node, level) {
|
||||
var hasChildren = (node.children && node.children.length > 0);
|
||||
var margin, returnVal;
|
||||
if(hasChildren) {
|
||||
margin = (9 + level * 17);
|
||||
returnVal = "<li class='sitemapNode sitemapExpandableNode'><div><div class='sitemapPageLinkContainer' style='margin-left:" + margin + "px'><a class='sitemapPlusMinusLink'><span class='sitemapMinus'></span></a>";
|
||||
} else {
|
||||
margin = (21 + level * 17);
|
||||
returnVal = "<li class='sitemapNode sitemapLeafNode'><div><div class='sitemapPageLinkContainer' style='margin-left:" + margin + "px'>";
|
||||
}
|
||||
|
||||
var isFolder = node.type == "Folder";
|
||||
if(!isFolder) {
|
||||
returnVal += "<a class='sitemapPageLink' nodeUrl='" + node.url + "'>";
|
||||
allNodeUrls.push(node.url);
|
||||
}
|
||||
returnVal += "<span class='sitemapPageIcon";
|
||||
if(node.type == "Flow") { returnVal += " sitemapFlowIcon"; }
|
||||
if(isFolder) { returnVal += " sitemapFolderIcon"; }
|
||||
|
||||
returnVal += "'></span><span class='sitemapPageName'>";
|
||||
returnVal += $('<div/>').text(node.pageName).html();
|
||||
returnVal += "</span>";
|
||||
if(!isFolder) returnVal += "</a>";
|
||||
returnVal += "</div></div>";
|
||||
|
||||
if(hasChildren) {
|
||||
returnVal += "<ul>";
|
||||
for(var i = 0; i < node.children.length; i++) {
|
||||
var child = node.children[i];
|
||||
returnVal += generateNode(child, level + 1);
|
||||
}
|
||||
returnVal += "</ul>";
|
||||
}
|
||||
returnVal += "</li>";
|
||||
return returnVal;
|
||||
}
|
||||
})();
|
||||
|
||||
//***** page_notes.js *****//
|
||||
// use this to isolate the scope
|
||||
(function () {
|
||||
if(!$axure.document.configuration.showPageNotes && !$axure.document.configuration.showAnnotationsSidebar) { return; }
|
||||
|
||||
$(window.document).ready(function () {
|
||||
$axure.player.createPluginHost({
|
||||
id: 'pageNotesHost',
|
||||
context: 'interface',
|
||||
title: 'NOTES',
|
||||
gid: 2
|
||||
});
|
||||
|
||||
generatePageNotes();
|
||||
|
||||
$(document).on('ContainerHeightChange', function () {
|
||||
updateContainerHeight();
|
||||
});
|
||||
|
||||
$('#footnotesButton').click(footnotes_click).addClass('sitemapToolbarButtonSelected');
|
||||
$('#notesNextButton').click(notesNext_click);
|
||||
$('#notesPreviousButton').click(notesPrevious_click);
|
||||
|
||||
// bind to the page load
|
||||
$axure.page.bind('load.page_notes', function () {
|
||||
|
||||
var hasNotes = false;
|
||||
|
||||
$('#pageNotesContent').html("");
|
||||
|
||||
if($axure.document.configuration.showPageNotes) {
|
||||
//populate the notes
|
||||
var notes = $axure.page.notes;
|
||||
if(notes) {
|
||||
var showNames = $axure.document.configuration.showPageNoteNames;
|
||||
|
||||
for(var noteName in notes) {
|
||||
var pageNoteUi = "<div class='pageNoteContainer'>";
|
||||
if(showNames) {
|
||||
pageNoteUi += "<div class='pageNoteName'>" + noteName + "</div>";
|
||||
}
|
||||
pageNoteUi += "<div class='pageNote'>" + linkify(notes[noteName]) + "</div>";
|
||||
pageNoteUi += "</div>";
|
||||
pageNoteUi += "<div class='dottedDivider'></div>";
|
||||
$('#pageNotesContent').append(pageNoteUi);
|
||||
|
||||
hasNotes = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if($axure.document.configuration.showAnnotationsSidebar) {
|
||||
var widgetNotes = $axure.page.widgetNotes;
|
||||
if(widgetNotes) {
|
||||
for(var i = 0; i < widgetNotes.length; i++) {
|
||||
var widgetNote = widgetNotes[i];
|
||||
var widgetNoteUi = "<div class='widgetNoteContainer' data-id='" + widgetNote["id"] + "'>";
|
||||
widgetNoteUi += "<div class='widgetNoteFootnote'></div>";
|
||||
widgetNoteUi += "<div class='widgetNoteLabel'>" + widgetNote["label"] + "</div>";
|
||||
|
||||
for(var widgetNoteName in widgetNote) {
|
||||
if(widgetNoteName != "label" && widgetNoteName != "id") {
|
||||
widgetNoteUi += "<div class='pageNoteName'>" + widgetNoteName + "</div>";
|
||||
widgetNoteUi += "<div class='pageNote'>" + linkify(widgetNote[widgetNoteName]) + "</div>";
|
||||
widgetNoteUi += "<div class='nondottedDivider'></div>";
|
||||
}
|
||||
}
|
||||
widgetNoteUi += "</div>";
|
||||
widgetNoteUi += "<div class='nondottedDivider'></div>";
|
||||
$('#pageNotesContent').append(widgetNoteUi);
|
||||
hasNotes = true;
|
||||
}
|
||||
$('.widgetNoteContainer').children(':last-child').remove();
|
||||
$('.widgetNoteFootnote').append("<div class='annnoteline'></div><div class='annnoteline'></div><div class='annnoteline'></div>");
|
||||
$('.widgetNoteContainer').click(function () {
|
||||
var wasSelected = $(this).hasClass('widgetNoteContainerSelected');
|
||||
$('.widgetNoteContainerSelected').removeClass('widgetNoteContainerSelected');
|
||||
if(!wasSelected) $(this).addClass('widgetNoteContainerSelected');
|
||||
$axure.messageCenter.postMessage('toggleSelectWidgetNote', this.getAttribute('data-id'));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
if(hasNotes) $('#pageNotesEmptyState').hide();
|
||||
else $('#pageNotesEmptyState').show();
|
||||
|
||||
//If footnotes enabled for this prototype...
|
||||
if($axure.document.configuration.showAnnotations == true) {
|
||||
//If the fn var is defined and set to 0, hide footnotes
|
||||
//else if hide-footnotes button selected, hide them
|
||||
var fnVal = getHashStringVar(FOOTNOTES_VAR_NAME);
|
||||
if(fnVal.length > 0 && fnVal == 0) {
|
||||
$('#footnotesButton').removeClass('sitemapToolbarButtonSelected');
|
||||
$axure.messageCenter.postMessage('annotationToggle', false);
|
||||
} else if(!$('#footnotesButton').is('.sitemapToolbarButtonSelected')) {
|
||||
//If the footnotes button isn't selected, hide them on this loaded page
|
||||
$axure.messageCenter.postMessage('annotationToggle', false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return false;
|
||||
});
|
||||
|
||||
function linkify(text) {
|
||||
var urlRegex = /(\b(((https?|ftp|file):\/\/)|(www\.))[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;
|
||||
return text.replace(urlRegex, function(url, b, c) {
|
||||
var url2 = (c == 'www.') ? 'http://' + url : url;
|
||||
return '<a href="' + url2 + '" target="_blank" class="noteLink">' + url + '</a>';
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
function updateContainerHeight() {
|
||||
$('#pageNotesScrollContainer').height($('#pageNotesHost').height() - $('#pageNotesHeader').outerHeight());
|
||||
}
|
||||
|
||||
$(document).on('sidebarCollapse', function (event, data) {
|
||||
clearSelection();
|
||||
});
|
||||
|
||||
$(document).on('pluginShown', function (event, data) {
|
||||
if(data != 2) {
|
||||
clearSelection();
|
||||
}
|
||||
});
|
||||
|
||||
function clearSelection() {
|
||||
$('.widgetNoteContainerSelected').removeClass('widgetNoteContainerSelected');
|
||||
$axure.messageCenter.postMessage('toggleSelectWidgetNote', '');
|
||||
}
|
||||
|
||||
function footnotes_click(event) {
|
||||
if($('#footnotesButton').is('.sitemapToolbarButtonSelected')) {
|
||||
$('#footnotesButton').removeClass('sitemapToolbarButtonSelected');
|
||||
$axure.messageCenter.postMessage('annotationToggle', false);
|
||||
//Add 'fn' hash string var so that footnotes stay hidden across reloads
|
||||
setVarInCurrentUrlHash(FOOTNOTES_VAR_NAME, 0);
|
||||
} else {
|
||||
$('#footnotesButton').addClass('sitemapToolbarButtonSelected');
|
||||
$axure.messageCenter.postMessage('annotationToggle', true);
|
||||
//Delete 'fn' hash string var if it exists since default is visible
|
||||
deleteVarFromCurrentUrlHash(FOOTNOTES_VAR_NAME);
|
||||
}
|
||||
}
|
||||
|
||||
function notesNext_click(event) {
|
||||
openNextPage();
|
||||
}
|
||||
|
||||
function notesPrevious_click(event) {
|
||||
openPreviousPage();
|
||||
}
|
||||
|
||||
function generatePageNotes() {
|
||||
var pageNotesUi = "<div id='pageNotesHeader'' class='sitemapHeader'>";
|
||||
|
||||
pageNotesUi += "<div id='pageNotesToolbar' class='sitemapToolbar'>";
|
||||
pageNotesUi += "<div class='pluginNameHeader'>NOTES</div>";
|
||||
pageNotesUi += "<div class='pageNameHeader'></div>";
|
||||
|
||||
pageNotesUi += "<div class='pageButtonHeader'>";
|
||||
|
||||
pageNotesUi += "<a id='notesPreviousButton' title='Previous Page' class='sitemapToolbarButton prevPageButton'></a>";
|
||||
pageNotesUi += "<a id='notesNextButton' title='Next Page' class='sitemapToolbarButton nextPageButton'></a>";
|
||||
|
||||
if($axure.document.configuration.showAnnotations == true) {
|
||||
pageNotesUi += "<a id='footnotesButton' title='Toggle Footnotes' class='sitemapToolbarButton'></a>";
|
||||
}
|
||||
|
||||
pageNotesUi += "</div>";
|
||||
pageNotesUi += "</div>";
|
||||
pageNotesUi += "</div>";
|
||||
|
||||
|
||||
pageNotesUi += "<div id='pageNotesScrollContainer'>";
|
||||
pageNotesUi += "<div id='pageNotesContainer'>";
|
||||
pageNotesUi += "<div id='pageNotesEmptyState' class='emptyStateContainer'><div class='emptyStateTitle'>No notes for this page.</div><div class='emptyStateContent'>Notes added in Axure RP will appear here.</div><div class='dottedDivider'></div></div>";
|
||||
pageNotesUi += "<span id='pageNotesContent'></span>";
|
||||
pageNotesUi += "</div></div>";
|
||||
|
||||
$('#pageNotesHost').html(pageNotesUi);
|
||||
updateContainerHeight();
|
||||
|
||||
if(!$axure.document.configuration.showAnnotations) {
|
||||
$('#pageNotesHost .pageNameHeader').css('padding-right', '55px');
|
||||
}
|
||||
}
|
||||
|
||||
})();
|
||||
//***** debug.js *****//
|
||||
// use this to isolate the scope
|
||||
(function () {
|
||||
|
||||
if(!$axure.document.configuration.showConsole) { return; }
|
||||
|
||||
$(document).ready(function () {
|
||||
$axure.player.createPluginHost({
|
||||
id: 'debugHost',
|
||||
context: 'interface',
|
||||
title: 'CONSOLE',
|
||||
gid: 3
|
||||
});
|
||||
|
||||
generateDebug();
|
||||
|
||||
$('#variablesClearLink').click(clearvars_click);
|
||||
$('#traceClearLink').click(cleartrace_click);
|
||||
|
||||
|
||||
$(document).on('ContainerHeightChange', function () {
|
||||
updateContainerHeight();
|
||||
});
|
||||
|
||||
//$('#traceContainer').hide();
|
||||
//$('#debugTraceLink').click(function () {
|
||||
// $('#variablesContainer').hide();
|
||||
// $('#traceContainer').show();
|
||||
//});
|
||||
//$('#debugVariablesLink').click(function () {
|
||||
// $('#variablesContainer').show();
|
||||
// $('#traceContainer').hide();
|
||||
//});
|
||||
|
||||
var currentStack= [];
|
||||
var finishedStack = [];
|
||||
|
||||
$axure.messageCenter.addMessageListener(function (message, data) {
|
||||
if(message == 'axCompositeEventMessage') {
|
||||
for(var i = 0; i < data.length; i++) {
|
||||
processMessages(data[i].message, data[i].data);
|
||||
}
|
||||
} else processMessages(message, data);
|
||||
});
|
||||
|
||||
var processMessages = function(message, data) {
|
||||
if(message == 'globalVariableValues') {
|
||||
$('#variablesDiv').empty();
|
||||
for(var key in data) {
|
||||
var value = data[key] == '' ? '(blank)' : data[key];
|
||||
$('#variablesDiv').append('<div class="variableDiv"><span class="variableName">' + key + '</span><br/>' + value + '</div>');
|
||||
}
|
||||
} else if(message == 'axEvent') {
|
||||
var addToStack = "<div class='axEventBlock'>";
|
||||
addToStack += "<div class='axTime'>" + new Date().toLocaleTimeString() + "</div>";
|
||||
addToStack += "<div class='axLabel'>" + data.label + " (" + data.type + ")</div>";
|
||||
addToStack += "<div class='axEvent'>" + data.event.description + "</div>";
|
||||
currentStack.push(addToStack);
|
||||
} else if (message == 'axEventComplete') {
|
||||
currentStack[currentStack.length - 1] += "</div>";
|
||||
finishedStack.push(currentStack.pop());
|
||||
if(currentStack.length == 0) {
|
||||
$('#traceClearLinkContainer').show();
|
||||
$('#traceEmptyState').hide();
|
||||
|
||||
$('.lastAxEvent').removeClass('lastAxEvent');
|
||||
for(var i = finishedStack.length - 1; i >= 0; i--) {
|
||||
if($('#traceDiv').children().length > 99) $('#traceDiv').children().last().remove();
|
||||
$('#traceDiv').prepend(finishedStack[i]);
|
||||
if(i == finishedStack.length - 1) $('#traceDiv').children().first().addClass('lastAxEvent');
|
||||
}
|
||||
finishedStack = [];
|
||||
}
|
||||
} else if (message == 'axCase') {
|
||||
currentStack[currentStack.length - 1] += "<div class='axCase'>" + data.description + "</div>";
|
||||
} else if (message == 'axAction') {
|
||||
currentStack[currentStack.length - 1] += "<div class='axAction'>" + data.description + "</div>";
|
||||
}
|
||||
}
|
||||
|
||||
// bind to the page load
|
||||
$axure.page.bind('load.debug', function () {
|
||||
|
||||
$axure.messageCenter.postMessage('getGlobalVariables', '');
|
||||
|
||||
return false;
|
||||
});
|
||||
|
||||
function clearvars_click(event) {
|
||||
$axure.messageCenter.postMessage('resetGlobalVariables', '');
|
||||
}
|
||||
|
||||
function cleartrace_click(event) {
|
||||
$('#traceDiv').html('');
|
||||
$('#traceClearLinkContainer').hide();
|
||||
$('#traceEmptyState').show();
|
||||
}
|
||||
});
|
||||
|
||||
function updateContainerHeight() {
|
||||
$('#debugScrollContainer').height($('#debugHost').height() - $('#debugHeader').outerHeight());
|
||||
}
|
||||
|
||||
function generateDebug() {
|
||||
var pageNotesUi = "<div id='debugHeader'' class='sitemapHeader'>";
|
||||
|
||||
pageNotesUi += "<div id='debugToolbar' class='sitemapToolbar'>";
|
||||
pageNotesUi += "<div class='pluginNameHeader'>CONSOLE</div>";
|
||||
pageNotesUi += "<div class='pageNameHeader'></div>";
|
||||
|
||||
//pageNotesUi += "<div class='pageButtonHeader'>";
|
||||
|
||||
//pageNotesUi += "<a id='previousPageButton' title='Previous Page' class='sitemapToolbarButton'></a>";
|
||||
//pageNotesUi += "<a id='nextPageButton' title='Next Page' class='sitemapToolbarButton'></a>";
|
||||
//pageNotesUi += "<a id='variablesClearLink' title='Reset Variables' class='sitemapToolbarButton'></a>";
|
||||
|
||||
//pageNotesUi += "</div>";
|
||||
pageNotesUi += "</div>";
|
||||
pageNotesUi += "</div>";
|
||||
|
||||
//var pageNotesUi = "<div id='debugToolbar'><a id='debugVariablesLink' class='debugToolbarButton'>Variables</a> | <a id='debugTraceLink' class='debugToolbarButton'>Trace</a></div>";
|
||||
pageNotesUi += "<div id='debugScrollContainer'>";
|
||||
pageNotesUi += "<div id='debugContainer'>";
|
||||
pageNotesUi += "<div id='variablesContainer'>";
|
||||
pageNotesUi += "<div id='variablesClearLinkContainer' class='debugLinksContainer'><a id='variablesClearLink' title='Reset Variables'>Reset Variables</a></div>";
|
||||
pageNotesUi += "<div id='variablesDiv'></div></div>";
|
||||
pageNotesUi += "<div class='dottedDivider'></div>";
|
||||
pageNotesUi += "<div id='traceContainer'>";
|
||||
pageNotesUi += "<div id='traceClearLinkContainer' class='debugLinksContainer'><a id='traceClearLink' title='Clear Trace'>Clear Trace</a></div>";
|
||||
pageNotesUi += "<div id='traceEmptyState' class='emptyStateContainer'><div class='emptyStateTitle'>No interactions in the trace.</div><div class='emptyStateContent'>Triggered interactions will appear here.</div><div class='dottedDivider'></div></div>";
|
||||
pageNotesUi += "<div id='traceDiv'></div></div>";
|
||||
pageNotesUi += "</div></div>";
|
||||
|
||||
$('#debugHost').html(pageNotesUi);
|
||||
updateContainerHeight();
|
||||
|
||||
$('#traceClearLinkContainer').hide();
|
||||
$('#traceEmptyState').show();
|
||||
}
|
||||
|
||||
})();
|
||||
948
接口说明/京西管理后台PC端/resources/scripts/startPre.js
Normal file
@@ -0,0 +1,948 @@
|
||||
// 8.0.0.3377. Generated 6/6/2018 6:37:57 PM UTC
|
||||
|
||||
//***** splitter.js *****//
|
||||
/*
|
||||
* jQuery.splitter.js - two-pane splitter window plugin
|
||||
*
|
||||
* version 1.51 (2009/01/09)
|
||||
*
|
||||
* Dual licensed under the MIT and GPL licenses:
|
||||
* http://www.opensource.org/licenses/mit-license.php
|
||||
* http://www.gnu.org/licenses/gpl.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* The splitter() plugin implements a two-pane resizable splitter window.
|
||||
* The selected elements in the jQuery object are converted to a splitter;
|
||||
* each selected element should have two child elements, used for the panes
|
||||
* of the splitter. The plugin adds a third child element for the splitbar.
|
||||
*
|
||||
* For more details see: http://methvin.com/splitter/
|
||||
*
|
||||
*
|
||||
* @example $('#MySplitter').splitter();
|
||||
* @desc Create a vertical splitter with default settings
|
||||
*
|
||||
* @example $('#MySplitter').splitter({type: 'h', accessKey: 'M'});
|
||||
* @desc Create a horizontal splitter resizable via Alt+Shift+M
|
||||
*
|
||||
* @name splitter
|
||||
* @type jQuery
|
||||
* @param Object options Options for the splitter (not required)
|
||||
* @cat Plugins/Splitter
|
||||
* @return jQuery
|
||||
* @author Dave Methvin (dave.methvin@gmail.com)
|
||||
*/
|
||||
;(function($){
|
||||
|
||||
$.fn.splitter = function(args){
|
||||
args = args || {};
|
||||
return this.each(function() {
|
||||
var zombie; // left-behind splitbar for outline resizes
|
||||
function startSplitMouse(evt) {
|
||||
if ( opts.outline )
|
||||
zombie = zombie || bar.clone(false).insertAfter(A);
|
||||
panes.css("-webkit-user-select", "none"); // Safari selects A/B text on a move
|
||||
bar.addClass(opts.activeClass);
|
||||
$('<div class="splitterMask"></div>').insertAfter(bar);
|
||||
A._posSplit = A[0][opts.pxSplit] - evt[opts.eventPos];
|
||||
$(document)
|
||||
.bind("mousemove", doSplitMouse)
|
||||
.bind("mouseup", endSplitMouse);
|
||||
}
|
||||
function doSplitMouse(evt) {
|
||||
var newPos = A._posSplit+evt[opts.eventPos];
|
||||
if ( opts.outline ) {
|
||||
newPos = Math.max(0, Math.min(newPos, splitter._DA - bar._DA));
|
||||
bar.css(opts.origin, newPos);
|
||||
} else
|
||||
resplit(newPos);
|
||||
}
|
||||
function endSplitMouse(evt) {
|
||||
$('div.splitterMask').remove();
|
||||
bar.removeClass(opts.activeClass);
|
||||
var newPos = A._posSplit+evt[opts.eventPos];
|
||||
if ( opts.outline ) {
|
||||
zombie.remove(); zombie = null;
|
||||
resplit(newPos);
|
||||
}
|
||||
panes.css("-webkit-user-select", "text"); // let Safari select text again
|
||||
$(document)
|
||||
.unbind("mousemove", doSplitMouse)
|
||||
.unbind("mouseup", endSplitMouse);
|
||||
}
|
||||
function resplit(newPos) {
|
||||
// Constrain new splitbar position to fit pane size limits
|
||||
newPos = Math.max(A._min, splitter._DA - B._max,
|
||||
Math.min(newPos, A._max, splitter._DA - bar._DA - B._min));
|
||||
// Resize/position the two panes
|
||||
bar._DA = bar[0][opts.pxSplit]; // bar size may change during dock
|
||||
|
||||
var posOffset = bar.is(':visible') ? bar._DA - 1 : 0;
|
||||
|
||||
bar.css(opts.origin, newPos - posOffset).css(opts.fixed, splitter._DF);
|
||||
A.css(opts.origin, 0).css(opts.split, newPos).css(opts.fixed, splitter._DF);
|
||||
B.css(opts.origin, newPos + bar._DA - posOffset)
|
||||
.css(opts.split, splitter._DA-bar._DA-newPos).css(opts.fixed, splitter._DF);
|
||||
// IE fires resize for us; all others pay cash
|
||||
if ( !IE_10_AND_BELOW )
|
||||
panes.trigger("resize");
|
||||
}
|
||||
function dimSum(jq, dims) {
|
||||
// Opera returns -1 for missing min/max width, turn into 0
|
||||
var sum = 0;
|
||||
for ( var i=1; i < arguments.length; i++ )
|
||||
sum += Math.max(parseInt(jq.css(arguments[i])) || 0, 0);
|
||||
return sum;
|
||||
}
|
||||
|
||||
// Determine settings based on incoming opts, element classes, and defaults
|
||||
var vh = (args.splitHorizontal? 'h' : args.splitVertical? 'v' : args.type) || 'v';
|
||||
var opts = $.extend({
|
||||
activeClass: 'active', // class name for active splitter
|
||||
pxPerKey: 8, // splitter px moved per keypress
|
||||
tabIndex: 0, // tab order indicator
|
||||
accessKey: '' // accessKey for splitbar
|
||||
},{
|
||||
v: { // Vertical splitters:
|
||||
keyLeft: 39, keyRight: 37, cursor: "col-resize",
|
||||
splitbarClass: "vsplitbar", outlineClass: "voutline",
|
||||
type: 'v', eventPos: "pageX", origin: "left",
|
||||
split: "width", pxSplit: "offsetWidth", side1: "Left", side2: "Right",
|
||||
fixed: "height", pxFixed: "offsetHeight", side3: "Top", side4: "Bottom"
|
||||
},
|
||||
h: { // Horizontal splitters:
|
||||
keyTop: 40, keyBottom: 38, cursor: "row-resize",
|
||||
splitbarClass: "hsplitbar", outlineClass: "houtline",
|
||||
type: 'h', eventPos: "pageY", origin: "top",
|
||||
split: "height", pxSplit: "offsetHeight", side1: "Top", side2: "Bottom",
|
||||
fixed: "width", pxFixed: "offsetWidth", side3: "Left", side4: "Right"
|
||||
}
|
||||
}[vh], args);
|
||||
|
||||
// Create jQuery object closures for splitter and both panes
|
||||
var splitter = $(this).css({position: "relative"});
|
||||
var panes = $(">*", splitter[0]).css({
|
||||
position: "absolute", // positioned inside splitter container
|
||||
"z-index": "1", // splitbar is positioned above
|
||||
"-moz-outline-style": "none" // don't show dotted outline
|
||||
});
|
||||
var A = $(panes[0]); // left or top
|
||||
var B = $(panes[1]); // right or bottom
|
||||
|
||||
// Focuser element, provides keyboard support; title is shown by Opera accessKeys
|
||||
var focuser = $('<a href="javascript:void(0)"></a>')
|
||||
.attr({accessKey: opts.accessKey, tabIndex: opts.tabIndex, title: opts.splitbarClass})
|
||||
.bind($.browser.opera?"click":"focus", function(){ this.focus(); bar.addClass(opts.activeClass) })
|
||||
.bind("keydown", function(e){
|
||||
var key = e.which || e.keyCode;
|
||||
var dir = key==opts["key"+opts.side1]? 1 : key==opts["key"+opts.side2]? -1 : 0;
|
||||
if ( dir )
|
||||
resplit(A[0][opts.pxSplit]+dir*opts.pxPerKey, false);
|
||||
})
|
||||
.bind("blur", function(){ bar.removeClass(opts.activeClass) });
|
||||
|
||||
// Splitbar element, can be already in the doc or we create one
|
||||
var bar = $(panes[2] || '<div></div>')
|
||||
.insertAfter(A).css("z-index", "100").append(focuser)
|
||||
.attr({"class": opts.splitbarClass, unselectable: "on"})
|
||||
.css({position: "absolute", "user-select": "none", "-webkit-user-select": "none",
|
||||
"-khtml-user-select": "none", "-moz-user-select": "none", "top": "0px"})
|
||||
.bind("mousedown", startSplitMouse);
|
||||
// Use our cursor unless the style specifies a non-default cursor
|
||||
if ( /^(auto|default|)$/.test(bar.css("cursor")) )
|
||||
bar.css("cursor", opts.cursor);
|
||||
|
||||
// Cache several dimensions for speed, rather than re-querying constantly
|
||||
bar._DA = bar[0][opts.pxSplit];
|
||||
splitter._PBF = $.boxModel? dimSum(splitter, "border"+opts.side3+"Width", "border"+opts.side4+"Width") : 0;
|
||||
splitter._PBA = $.boxModel? dimSum(splitter, "border"+opts.side1+"Width", "border"+opts.side2+"Width") : 0;
|
||||
A._pane = opts.side1;
|
||||
B._pane = opts.side2;
|
||||
$.each([A,B], function(){
|
||||
this._min = opts["min"+this._pane] || dimSum(this, "min-"+opts.split);
|
||||
this._max = opts["max"+this._pane] || dimSum(this, "max-"+opts.split) || 9999;
|
||||
this._init = opts["size"+this._pane]===true ?
|
||||
parseInt($.curCSS(this[0],opts.split)) : opts["size"+this._pane];
|
||||
});
|
||||
|
||||
// Determine initial position, get from cookie if specified
|
||||
var initPos = A._init;
|
||||
if ( !isNaN(B._init) ) // recalc initial B size as an offset from the top or left side
|
||||
initPos = splitter[0][opts.pxSplit] - splitter._PBA - B._init - bar._DA;
|
||||
if ( opts.cookie ) {
|
||||
if ( !$.cookie )
|
||||
alert('jQuery.splitter(): jQuery cookie plugin required');
|
||||
var ckpos = parseInt($.cookie(opts.cookie));
|
||||
if ( !isNaN(ckpos) )
|
||||
initPos = ckpos;
|
||||
$(window).bind("unload", function(){
|
||||
var state = String(bar.css(opts.origin)); // current location of splitbar
|
||||
$.cookie(opts.cookie, state, {expires: opts.cookieExpires || 365,
|
||||
path: opts.cookiePath || document.location.pathname});
|
||||
});
|
||||
}
|
||||
if ( isNaN(initPos) ) // King Solomon's algorithm
|
||||
initPos = Math.round((splitter[0][opts.pxSplit] - splitter._PBA - bar._DA)/2);
|
||||
|
||||
// Resize event propagation and splitter sizing
|
||||
if ( opts.anchorToWindow ) {
|
||||
// Account for margin or border on the splitter container and enforce min height
|
||||
splitter._hadjust = dimSum(splitter, "borderTopWidth", "borderBottomWidth", "marginBottom");
|
||||
splitter._hmin = Math.max(dimSum(splitter, "minHeight"), 20);
|
||||
$(window).bind("resize", function(){
|
||||
var top = splitter.offset().top;
|
||||
var wh = $(window).height();
|
||||
splitter.css("height", Math.max(wh-top-splitter._hadjust, splitter._hmin)+"px");
|
||||
if ( !IE_10_AND_BELOW ) splitter.trigger("resize");
|
||||
}).trigger("resize");
|
||||
}
|
||||
else if ( opts.resizeToWidth && !IE_10_AND_BELOW )
|
||||
$(window).bind("resize", function(){
|
||||
splitter.trigger("resize");
|
||||
});
|
||||
|
||||
// Resize event handler; triggered immediately to set initial position
|
||||
splitter.bind("resize", function(e, size){
|
||||
// Custom events bubble in jQuery 1.3; don't Yo Dawg
|
||||
if ( e.target != this ) return;
|
||||
// Determine new width/height of splitter container
|
||||
splitter._DF = splitter[0][opts.pxFixed] - splitter._PBF;
|
||||
splitter._DA = splitter[0][opts.pxSplit] - splitter._PBA;
|
||||
// Bail if splitter isn't visible or content isn't there yet
|
||||
if ( splitter._DF <= 0 || splitter._DA <= 0 ) return;
|
||||
// Re-divvy the adjustable dimension; maintain size of the preferred pane
|
||||
resplit(!isNaN(size)? size : (!(opts.sizeRight||opts.sizeBottom)? A[0][opts.pxSplit] :
|
||||
splitter._DA-B[0][opts.pxSplit]-bar._DA));
|
||||
}).trigger("resize" , [initPos]);
|
||||
});
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
//***** axutils.js *****//
|
||||
/*
|
||||
*
|
||||
*
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
(function() {
|
||||
// define the root namespace object
|
||||
if(!window.$axure) window.$axure = {};
|
||||
|
||||
$axure.utils = {};
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Makes an object bindable
|
||||
// ------------------------------------------------------------------------
|
||||
$axure.utils.makeBindable = function(obj, events) {
|
||||
if(obj.registeredBindings != null) return;
|
||||
|
||||
// copy the events
|
||||
obj.bindableEvents = events.slice();
|
||||
obj.registeredBindings = {};
|
||||
|
||||
obj.bind = function(eventName, fn) {
|
||||
var binding = {};
|
||||
binding.eventName = eventName;
|
||||
binding.action = fn;
|
||||
|
||||
var bindingList = this.registeredBindings[eventName];
|
||||
if(bindingList == null) {
|
||||
bindingList = [];
|
||||
this.registeredBindings[eventName] = bindingList;
|
||||
}
|
||||
bindingList[bindingList.length] = binding;
|
||||
};
|
||||
|
||||
obj.unbind = function(eventName) {
|
||||
if(eventName.indexOf('.') >= 0) {
|
||||
this.registeredBindings[eventName] = null;
|
||||
} else {
|
||||
var event = eventName.split('.')[0];
|
||||
for(var bindingKey in this.registeredBindings) {
|
||||
if(bindingKey.split('.')[0] == event) {
|
||||
this.registeredBindings[bindingKey] = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
obj.triggerEvent = function(eventName, arg) {
|
||||
for(var bindingKey in this.registeredBindings) {
|
||||
if(bindingKey.split('.')[0] == eventName) {
|
||||
var bindings = this.registeredBindings[bindingKey];
|
||||
for(var i = 0; i < bindings.length; i++) {
|
||||
if(arg == null) {
|
||||
bindings[i].action();
|
||||
} else {
|
||||
bindings[i].action(arg);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
$axure.utils.loadCSS = function(url) {
|
||||
$('head').append('<link text="text/css" href="' + url + '" rel="Stylesheet" />');
|
||||
};
|
||||
|
||||
$axure.utils.loadJS = function(url) {
|
||||
$('head').append('<script text="text/javascript" language="JavaScript" src="' + url + '"></script>');
|
||||
};
|
||||
|
||||
$axure.utils.curry = function(fn) {
|
||||
var curriedArgs = Array.prototype.slice.call(arguments, [1]);
|
||||
return function() {
|
||||
fn.apply(this, curriedArgs.concat(Array.prototype.slice.call(arguments)));
|
||||
};
|
||||
};
|
||||
|
||||
$axure.utils.succeeded = function(result) {
|
||||
return result && result.success;
|
||||
};
|
||||
|
||||
$axure.utils.createUniqueTag = function() {
|
||||
return Math.random().toString().substring(2) +
|
||||
Math.random().toString().substring(2) +
|
||||
Math.random().toString().substring(2) +
|
||||
Math.random().toString().substring(2);
|
||||
};
|
||||
|
||||
$axure.utils.formatDate = function(date) {
|
||||
var months = [
|
||||
"Jan", "Feb", "Mar", "Apr", "May", "Jun",
|
||||
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
|
||||
var hours = date.getHours();
|
||||
var amPm = (hours > 11 ? 'PM' : 'AM');
|
||||
hours = hours % 12;
|
||||
if(hours == '0') hours = '12';
|
||||
var minutes = date.getMinutes() + '';
|
||||
if(minutes.length == 1) {
|
||||
minutes = '0' + minutes;
|
||||
}
|
||||
return [
|
||||
months[date.getMonth()], ' ', date.getDate(), ' ', date.getFullYear(), ' ',
|
||||
hours, ':', minutes, ' ', amPm].join('');
|
||||
|
||||
};
|
||||
|
||||
$axure.utils.quickObject = function() {
|
||||
var returnVal = {};
|
||||
for(var i = 0; i < arguments.length; i += 2) {
|
||||
returnVal[arguments[i]] = arguments[i + 1];
|
||||
}
|
||||
return returnVal;
|
||||
};
|
||||
|
||||
var matrixBase = {
|
||||
mul: function(val) {
|
||||
if(val.x !== undefined) {
|
||||
return $axure.utils.Vector2D(
|
||||
this.m11 * val.x + this.m12 * val.y + this.tx,
|
||||
this.m21 * val.x + this.m22 * val.y + this.ty);
|
||||
} else if(val.m11) {
|
||||
return $axure.utils.Matrix2D(
|
||||
this.m11 * val.m11 + this.m12 * val.m21,
|
||||
this.m11 * val.m12 + this.m12 * val.m22,
|
||||
this.m21 * val.m11 + this.m22 * val.m21,
|
||||
this.m21 * val.m12 + this.m22 * val.m22,
|
||||
val.tx + this.tx * val.m11 + this.ty * val.m21,
|
||||
val.ty + this.tx * val.m12 + this.ty * val.m22
|
||||
);
|
||||
} else if(Number(val)) {
|
||||
var num = Number(val);
|
||||
return $axure.utils.Matrix2D(this.m11 * num, this.m12 * num,
|
||||
this.m21 * num, this.m22 * num,
|
||||
this.tx * num, this.ty * num);
|
||||
} else return undefined;
|
||||
},
|
||||
rotate: function(angle) {
|
||||
var angleRad = angle * Math.PI / 180;
|
||||
var c = Math.cos(angleRad);
|
||||
var s = Math.sin(angleRad);
|
||||
|
||||
return this.mul($axure.utils.Matrix2D(c, -s, s, c));
|
||||
},
|
||||
translate: function(tx, ty) {
|
||||
return this.mul($axure.utils.Matrix2D(1, 0, 0, 1, tx, ty));
|
||||
}
|
||||
};
|
||||
|
||||
$axure.utils.Matrix2D = function(m11, m12, m21, m22, tx, ty) {
|
||||
return $.extend({
|
||||
m11: m11 || 0,
|
||||
m12: m12 || 0,
|
||||
m21: m21 || 0,
|
||||
m22: m22 || 0,
|
||||
tx: tx || 0,
|
||||
ty: ty || 0
|
||||
}, matrixBase);
|
||||
};
|
||||
|
||||
$axure.utils.Vector2D = function(x, y) {
|
||||
return { x: x || 0, y: y || 0 };
|
||||
};
|
||||
|
||||
$axure.utils.Matrix2D.identity = function() {
|
||||
return $axure.utils.Matrix2D(1, 0, 0, 1, 0, 0);
|
||||
};
|
||||
|
||||
$axure.utils.fixPng = function(png) {
|
||||
if(!(/MSIE ((5\.5)|6)/.test(navigator.userAgent) && navigator.platform == "Win32")) return;
|
||||
|
||||
var src = png.src;
|
||||
if(!png.style.width) { png.style.width = $(png).width(); }
|
||||
if(!png.style.height) { png.style.height = $(png).height(); }
|
||||
png.onload = function() { };
|
||||
png.src = $axure.utils.getTransparentGifPath();
|
||||
png.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "',sizingMethod='scale')";
|
||||
};
|
||||
})();
|
||||
|
||||
// TODO: [mas] simplify this
|
||||
if(window.$axure && window.$axure.internal) {
|
||||
$axure.internal(function($ax) { $ax.utils = $axure.utils; });
|
||||
}
|
||||
|
||||
// Its too much of a pain to escape everything and use regular expresions, just replace manually
|
||||
(function () {
|
||||
var original = String.prototype.replace;
|
||||
// TODO: maybe use flags or object instead to pass options in
|
||||
String.prototype.replace = function (search, newVal, replaceFirst, ignoreCase) {
|
||||
// Use original is some cases
|
||||
if (search instanceof RegExp) return original.apply(this, arguments);
|
||||
|
||||
search = String(search);
|
||||
var searchCompare = ignoreCase ? this.toLowerCase() : this;
|
||||
if (ignoreCase) search = search.toLowerCase();
|
||||
|
||||
var searchLength = search.length;
|
||||
var thisLength = this.length;
|
||||
|
||||
var index = 0;
|
||||
var retVal = '';
|
||||
while (index != -1) {
|
||||
var nextIndex = searchCompare.indexOf(search, index);
|
||||
if (nextIndex != -1) {
|
||||
retVal += this.substring(index, nextIndex) + newVal;
|
||||
index = nextIndex + searchLength;
|
||||
if (index >= thisLength) index = -1;
|
||||
} else {
|
||||
retVal += this.substring(index);
|
||||
index = -1;
|
||||
}
|
||||
if (replaceFirst) break;
|
||||
}
|
||||
|
||||
return retVal;
|
||||
};
|
||||
|
||||
if (!Array.prototype.indexOf) {
|
||||
Array.prototype.indexOf = function (elt /*, from*/) {
|
||||
var len = this.length >>> 0;
|
||||
|
||||
var from = trunc(Number(arguments[1]) || 0);
|
||||
if(from < 0) from += len;
|
||||
|
||||
for(; from < len; from++) {
|
||||
if(from in this && this[from] === elt) return from;
|
||||
}
|
||||
return -1;
|
||||
};
|
||||
}
|
||||
|
||||
var trunc = function(num) {
|
||||
return num < 0 ? Math.ceil(num) : Math.floor(num);
|
||||
};
|
||||
|
||||
|
||||
})();
|
||||
|
||||
//***** axplayer.js *****//
|
||||
if (!window.$axure) window.$axure = function () { };
|
||||
if (typeof console == 'undefined') console = {
|
||||
log: function () { }
|
||||
};
|
||||
if(window._axUtils) $axure.utils = _axUtils;
|
||||
|
||||
$axure.loadDocument = function(document) {
|
||||
$axure.document = document;
|
||||
};
|
||||
|
||||
function setUpController() {
|
||||
|
||||
//$axure.utils = _axUtils;
|
||||
|
||||
var _page = {};
|
||||
$axure.page = _page;
|
||||
|
||||
$axure.utils.makeBindable(_page, ['load']);
|
||||
|
||||
var _player = function() {
|
||||
};
|
||||
$axure.player = _player;
|
||||
|
||||
//-----------------------------------------
|
||||
//Global Var array, getLinkUrl function and setGlobalVar listener are
|
||||
//for use in setting global vars in page url string when clicking a
|
||||
//page in the sitemap
|
||||
//-----------------------------------------
|
||||
var _globalVars = {};
|
||||
|
||||
//-----------------------------------------
|
||||
//Used by getLinkUrl below to check if local server is running
|
||||
//in order to send back the global variables as a query string
|
||||
//in the page url
|
||||
//-----------------------------------------
|
||||
var _shouldSendVarsToServer = function () {
|
||||
//If exception occurs (due to page in content frame being from a different domain, etc)
|
||||
//then run the check without the url (which will end up checking against sitemap url)
|
||||
try {
|
||||
var mainFrame = document.getElementById("mainFrame");
|
||||
return $axure.shouldSendVarsToServer(mainFrame.contentWindow.location.href);
|
||||
} catch (e) {
|
||||
return $axure.shouldSendVarsToServer();
|
||||
}
|
||||
};
|
||||
|
||||
var _getLinkUrl = function (baseUrl) {
|
||||
var toAdd = '';
|
||||
for(var globalVarName in _globalVars) {
|
||||
var val = _globalVars[globalVarName];
|
||||
if(val != null) {
|
||||
if(toAdd.length > 0) toAdd += '&';
|
||||
toAdd += globalVarName + '=' + encodeURIComponent(val);
|
||||
}
|
||||
}
|
||||
return toAdd.length > 0 ? baseUrl + (_shouldSendVarsToServer() ? '?' : '#') + toAdd + "&CSUM=1" : baseUrl;
|
||||
};
|
||||
$axure.getLinkUrlWithVars = _getLinkUrl;
|
||||
|
||||
$axure.messageCenter.addMessageListener(function(message, data) {
|
||||
if (message == 'setGlobalVar'){
|
||||
_globalVars[data.globalVarName] = data.globalVarValue;
|
||||
}
|
||||
});
|
||||
|
||||
$axure.messageCenter.addStateListener('page.data', function (key, value) {
|
||||
for (var subKey in value) {
|
||||
_page[subKey] = value[subKey];
|
||||
}
|
||||
$axure.page.triggerEvent('load');
|
||||
});
|
||||
|
||||
// ---------------------------------------------
|
||||
// Navigates the main frame (setting the currently visible page). If the link is relative,
|
||||
// this method should test if it is actually a axure rp page being loaded and properly set
|
||||
// up all the controller for the page if it is
|
||||
// ---------------------------------------------
|
||||
_page.navigate = function (url, includeVariables) {
|
||||
var mainFrame = document.getElementById("mainFrame");
|
||||
//var mainFrame = window.parent.mainFrame;
|
||||
// if this is a relative url...
|
||||
var urlToLoad;
|
||||
if (url.indexOf(':') < 0 || url[0] == '/') {
|
||||
var winHref = window.location.href;
|
||||
var page = winHref.substring(0, winHref.lastIndexOf('/') + 1) + url;
|
||||
urlToLoad = page;
|
||||
} else {
|
||||
urlToLoad = url;
|
||||
}
|
||||
if (!includeVariables) {
|
||||
mainFrame.contentWindow.location.href = urlToLoad;
|
||||
return;
|
||||
}
|
||||
var urlWithVars = $axure.getLinkUrlWithVars(urlToLoad);
|
||||
var currentData = $axure.messageCenter.getState('page.data');
|
||||
var currentUrl = currentData && currentData.location;
|
||||
if(currentUrl && currentUrl.indexOf('#') != -1) currentUrl = currentUrl.substring(0, currentUrl.indexOf('#'))
|
||||
|
||||
// this is so we can make sure the current frame reloads if the variables have changed
|
||||
// by default, if the location is the same but the hash code is different, the browser will not
|
||||
// trigger a reload
|
||||
mainFrame.contentWindow.location.href =
|
||||
currentUrl && urlToLoad.toLowerCase() != currentUrl.toLowerCase()
|
||||
? urlWithVars
|
||||
: 'resources/reload.html#' + encodeURI(urlWithVars);
|
||||
|
||||
};
|
||||
|
||||
var pluginIds = [];
|
||||
var plugins = {};
|
||||
var currentVisibleHostId = null;
|
||||
// ---------------------------------------------
|
||||
// Adds a tool box frame from a url to the interface. This is useful for loading plugins
|
||||
// settings is an object that supports the following properties:
|
||||
// - id : the id of the element for the plugin
|
||||
// - context : the context to create the plugin host for
|
||||
// - title : the user-visible caption for the plugin
|
||||
// ---------------------------------------------
|
||||
_player.createPluginHost = function (settings) {
|
||||
// right now we only understand an interface context
|
||||
if (!(!settings.context || settings.context === 'interface')) {
|
||||
throw ('unknown context type');
|
||||
}
|
||||
if (!settings.id) throw ('each plugin host needs an id');
|
||||
|
||||
var host = $('<div id=' + settings.id + '></div>')
|
||||
.appendTo('#interfaceControlFrameHostContainer');
|
||||
|
||||
host.hide();
|
||||
|
||||
var headerLink = $('<a pluginId="' + settings.id + '" >' + settings.title.toUpperCase() + '</a>');
|
||||
|
||||
headerLink
|
||||
.click($axure.utils.curry(interfaceControlHeaderButton_click, settings.id)).wrap('<li id="' + settings.id + 'Btn">');
|
||||
|
||||
if((settings.id == 'feedbackHost' || settings.id == 'feedbackContainer') && pluginIds[pluginIds.length - 1] == 'debugHost') headerLink.parent().insertBefore('#debugHostBtn');
|
||||
else headerLink.parent().appendTo('#interfaceControlFrameHeader');
|
||||
|
||||
pluginIds[pluginIds.length] = settings.id;
|
||||
plugins[settings.id] = settings;
|
||||
|
||||
$(document).trigger('pluginCreated', [settings.gid]);
|
||||
};
|
||||
|
||||
// private methods
|
||||
var interfaceControlHeaderButton_click = function (id) {
|
||||
var clickedPlugin = $('#interfaceControlFrameHeader a[pluginId=' + id + ']');
|
||||
if(clickedPlugin.hasClass('selected')) {
|
||||
clickedPlugin.removeClass('selected');
|
||||
$('#' + id).hide();
|
||||
_player.collapseToBar();
|
||||
|
||||
$(document).trigger('pluginShown',['']);
|
||||
} else {
|
||||
$('#interfaceControlFrameHeader a').removeClass('selected');
|
||||
clickedPlugin.addClass('selected');
|
||||
|
||||
$('#' + currentVisibleHostId).hide();
|
||||
$('#' + id).show();
|
||||
currentVisibleHostId = id;
|
||||
_player.expandFromBar();
|
||||
|
||||
$(document).trigger('pluginShown', [plugins[id].gid]);
|
||||
}
|
||||
|
||||
$(document).trigger('ContainerHeightChange');
|
||||
};
|
||||
|
||||
$axure.player.showPlugin = function(gid) {
|
||||
for(var id in plugins) {
|
||||
if(plugins[id].gid == gid) {
|
||||
$('a[pluginId="' + id + '"]').click();
|
||||
break;
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
function setUpDocumentStateManager() {
|
||||
var mgr = $axure.prototype.documentStateManager = {};
|
||||
$axure.utils.makeBindable(mgr, ['globalVariableChanged']);
|
||||
|
||||
mgr.globalVariableValues = {};
|
||||
|
||||
mgr.setGlobalVariable = function(varname, value, source) {
|
||||
var arg = {};
|
||||
arg.variableName = varname;
|
||||
arg.newValue = value;
|
||||
arg.oldValue = this.getGlobalVariable(varname);
|
||||
arg.source = source;
|
||||
|
||||
mgr.globalVariableValues[varname] = value;
|
||||
this.triggerEvent('globalVariableChanged', arg);
|
||||
};
|
||||
|
||||
mgr.getGlobalVariable = function(varname) {
|
||||
return mgr.globalVariableValues[varname];
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
function setUpPageStateManager() {
|
||||
var mgr = $axure.prototype.pageStateManager = {};
|
||||
|
||||
mgr.panelToStateIds = {};
|
||||
}
|
||||
|
||||
//***** messagecenter.js *****//
|
||||
if (typeof console == 'undefined') console = {
|
||||
log: function () { }
|
||||
};
|
||||
|
||||
// sniff chrome
|
||||
var CHROME_5_LOCAL = false;
|
||||
var CHROME = false;
|
||||
var SAFARI = false;
|
||||
var FIREFOX = false;
|
||||
var WEBKIT = false;
|
||||
var OS_MAC = false;
|
||||
var IOS = false;
|
||||
var ANDROID = false;
|
||||
var MOBILE_DEVICE = false;
|
||||
|
||||
var IE = false;
|
||||
var IE_10_AND_BELOW = false; //ie 10 and lower
|
||||
var IE_11_AND_ABOVE = false; //ie 11 and above
|
||||
var BROWSER_VERSION = 5000;
|
||||
(function () {
|
||||
if(!window.$axure) window.$axure = function() {};
|
||||
var useragent = window.navigator.userAgent;
|
||||
|
||||
var edgeRegex = /Edge\/([0-9]+)/g;
|
||||
var edgeMatch = edgeRegex.exec(useragent);
|
||||
$axure.browser = { isEdge: Boolean(edgeMatch) };
|
||||
|
||||
if(!$axure.browser.isEdge) {
|
||||
var chromeRegex = /Chrome\/([0-9]+).([0-9]+)/g;
|
||||
var chromeMatch = chromeRegex.exec(useragent);
|
||||
CHROME = Boolean(chromeMatch);
|
||||
CHROME_5_LOCAL = chromeMatch &&
|
||||
Number(chromeMatch[1]) >= 5 &&
|
||||
location.href.indexOf('file://') >= 0;
|
||||
}
|
||||
|
||||
var safariRegex = /Safari\/([0-9]+)/g;
|
||||
var safariMatch = safariRegex.exec(useragent);
|
||||
SAFARI = Boolean(safariMatch) && !CHROME; //because chrome also inserts safari string into user agent
|
||||
|
||||
var webkitRegex = /WebKit\//g ;
|
||||
WEBKIT = Boolean(webkitRegex.exec(useragent));
|
||||
|
||||
FIREFOX = useragent.toLowerCase().indexOf('firefox') > -1;
|
||||
|
||||
var macRegex = /Mac/g ;
|
||||
OS_MAC = Boolean(macRegex.exec(window.navigator.platform));
|
||||
|
||||
IOS = useragent.match(/iPhone/i) || useragent.match(/iPad/i) || useragent.match(/iPod/i);
|
||||
ANDROID = useragent.match(/Android/i);
|
||||
|
||||
MOBILE_DEVICE = ANDROID || IOS
|
||||
|| navigator.userAgent.match(/webOS/i)
|
||||
|| navigator.userAgent.match(/BlackBerry/i)
|
||||
|| navigator.userAgent.match(/Tablet PC/i)
|
||||
|| navigator.userAgent.match(/Windows Phone/i);
|
||||
|
||||
if($.browser) {
|
||||
if($.browser.msie) IE_10_AND_BELOW = true;
|
||||
else IE_11_AND_ABOVE = useragent.toLowerCase().indexOf('trident') > -1;
|
||||
|
||||
BROWSER_VERSION = $.browser.version;
|
||||
}
|
||||
|
||||
IE = IE_10_AND_BELOW || IE_11_AND_ABOVE;
|
||||
|
||||
//Used by sitemap and variables.js getLinkUrl functions so that they know
|
||||
//whether to embed global variables in URL as query string or hash string
|
||||
//_shouldSendVars persists the value for sitemap instead of re-checking every time
|
||||
var _shouldSendVars;
|
||||
var _shouldSendVarsToServer = function(url) {
|
||||
if(typeof _shouldSendVars != 'undefined') {
|
||||
return _shouldSendVars;
|
||||
}
|
||||
|
||||
if(SAFARI || (IE_10_AND_BELOW && BROWSER_VERSION < 10)) {
|
||||
var urlToCheck = typeof url != 'undefined' ? url : window.location.href;
|
||||
var serverRegex = /http:\/\/127\.0\.0\.1:[0-9]{5}/g;
|
||||
var serverMatch = serverRegex.exec(urlToCheck);
|
||||
var previewRegex = /[0-9]{2}\.[0-9]{2}\.[0-9]{2}/g;
|
||||
var previewMatch = previewRegex.exec(urlToCheck);
|
||||
if(Boolean(serverMatch) && Boolean(previewMatch)) {
|
||||
_shouldSendVars = true;
|
||||
return _shouldSendVars;
|
||||
}
|
||||
}
|
||||
|
||||
_shouldSendVars = false;
|
||||
return _shouldSendVars;
|
||||
};
|
||||
$axure.shouldSendVarsToServer = _shouldSendVarsToServer;
|
||||
})();
|
||||
|
||||
(function() {
|
||||
var _topMessageCenter;
|
||||
var _messageCenter = {};
|
||||
var _listeners = [];
|
||||
var _stateListeners = [];
|
||||
var _state = {};
|
||||
var _eventObject = null;
|
||||
|
||||
var _queuedMessages = [];
|
||||
var _initialized = false;
|
||||
|
||||
// this is for the non Chrome 5 local scenarios. The "top" message center will dispatch to all the bottom ones
|
||||
var _childrenMessageCenters = [];
|
||||
|
||||
// create $axure if it hasn't been created
|
||||
if (!window.$axure) window.$axure = function() {};
|
||||
$axure.messageCenter = _messageCenter;
|
||||
|
||||
// isolate scope, and initialize _topMessageCenter.
|
||||
(function() {
|
||||
if (!CHROME_5_LOCAL) {
|
||||
var topAxureWindow = window;
|
||||
try {
|
||||
while(topAxureWindow.parent && topAxureWindow.parent !== topAxureWindow
|
||||
&& topAxureWindow.parent.$axure) topAxureWindow = topAxureWindow.parent;
|
||||
} catch(e) {}
|
||||
_topMessageCenter = topAxureWindow.$axure.messageCenter;
|
||||
}
|
||||
})();
|
||||
|
||||
$(window.document).ready(function() {
|
||||
if (CHROME_5_LOCAL) {
|
||||
$('body').append("<div id='axureEventReceiverDiv' style='display:none'></div>" +
|
||||
"<div id='axureEventSenderDiv' style='display:none'></div>");
|
||||
|
||||
_eventObject = window.document.createEvent('Event');
|
||||
_eventObject.initEvent('axureMessageSenderEvent', true, true);
|
||||
|
||||
$('#axureEventReceiverDiv').bind('axureMessageReceiverEvent', function () {
|
||||
var request = JSON.parse($(this).text());
|
||||
_handleRequest(request);
|
||||
});
|
||||
} else {
|
||||
if (_topMessageCenter != _messageCenter) {
|
||||
_topMessageCenter.addChildMessageCenter(_messageCenter);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
var _handleRequest = function (request) {
|
||||
// route the request to all the listeners
|
||||
for(var i = 0; i < _listeners.length; i++) _listeners[i](request.message, request.data);
|
||||
|
||||
// now handle the queued messages if we're initializing
|
||||
if (request.message == 'initialize') {
|
||||
_initialized = true;
|
||||
// send all the queued messages and return
|
||||
for (var i = 0; i < _queuedMessages.length; i++) {
|
||||
var qRequest = _queuedMessages[i];
|
||||
_messageCenter.postMessage(qRequest.message, qRequest.data);
|
||||
}
|
||||
_queuedMessages = [];
|
||||
}
|
||||
|
||||
// and then handle the set state messages, if necessary
|
||||
if (request.message == 'setState') {
|
||||
_state[request.data.key] = request.data.value;
|
||||
for (var i = 0; i < _stateListeners.length; i++) {
|
||||
var keyListener = _stateListeners[i];
|
||||
// if thep passed a null or empty value, always post the message
|
||||
if (!keyListener.key || keyListener.key == request.data.key) {
|
||||
keyListener.listener(request.data.key, request.data.value);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
// -----------------------------------------------------------------------------------------
|
||||
// This method allows for dispatching messages in the non-chromelocal scenario.
|
||||
// Each child calls this on _topMessageCenter
|
||||
// -----------------------------------------------------------------------------------------
|
||||
_messageCenter.addChildMessageCenter = function(messageCenter) {
|
||||
_childrenMessageCenters[_childrenMessageCenters.length] = messageCenter;
|
||||
};
|
||||
|
||||
// -----------------------------------------------------------------------------------------
|
||||
// This method allows for dispatching messages in the non-chromelocal scenario.
|
||||
// Each child calls this on _topMessageCenter
|
||||
// -----------------------------------------------------------------------------------------
|
||||
_messageCenter.dispatchMessage = function(message, data) {
|
||||
_handleRequest({
|
||||
message: message,
|
||||
data: data
|
||||
});
|
||||
};
|
||||
|
||||
// -----------------------------------------------------------------------------------------
|
||||
// -----------------------------------------------------------------------------------------
|
||||
_messageCenter.dispatchMessageRecursively = function(message, data) {
|
||||
|
||||
// dispatch to the top center first
|
||||
_messageCenter.dispatchMessage(message, data);
|
||||
|
||||
$('iframe').each(function(index, frame) {
|
||||
//try,catch to handle permissions error in FF when loading pages from another domain
|
||||
try {
|
||||
if (frame.contentWindow.$axure && frame.contentWindow.$axure.messageCenter) {
|
||||
frame.contentWindow.$axure.messageCenter.dispatchMessageRecursively(message, data);
|
||||
}
|
||||
}catch(e) {}
|
||||
});
|
||||
};
|
||||
|
||||
var _combineEventMessages = false;
|
||||
var _compositeEventMessageData = [];
|
||||
_messageCenter.startCombineEventMessages = function() {
|
||||
_combineEventMessages = true;
|
||||
}
|
||||
|
||||
_messageCenter.endCombineEventMessages = function () {
|
||||
_messageCenter.sendCompositeEventMessage();
|
||||
_combineEventMessages = false;
|
||||
}
|
||||
|
||||
_messageCenter.sendCompositeEventMessage = function () {
|
||||
_messageCenter.postMessage('axCompositeEventMessage', _compositeEventMessageData);
|
||||
_compositeEventMessageData = [];
|
||||
}
|
||||
|
||||
_messageCenter.postMessage = function (message, data) {
|
||||
if(_combineEventMessages) {
|
||||
if(message == 'axEvent' || message == 'axCase' || message == 'axAction' || message == 'axEventComplete') {
|
||||
_compositeEventMessageData.push({ 'message': message, 'data': data });
|
||||
if(_compositeEventMessageData.length >= 10) _messageCenter.sendCompositeEventMessage();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if(!CHROME_5_LOCAL) {
|
||||
_topMessageCenter.dispatchMessageRecursively(message, data);
|
||||
} else {
|
||||
var request = {
|
||||
message: message,
|
||||
data: data
|
||||
};
|
||||
|
||||
if(_initialized) {
|
||||
var senderDiv = window.document.getElementById('axureEventSenderDiv');
|
||||
var messageText = JSON.stringify(request);
|
||||
senderDiv.innerText = messageText;
|
||||
senderDiv.dispatchEvent(_eventObject);
|
||||
} else {
|
||||
_queuedMessages[_queuedMessages.length] = request;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
_messageCenter.setState = function(key, value) {
|
||||
var data = {
|
||||
key: key,
|
||||
value: value
|
||||
};
|
||||
_messageCenter.postMessage('setState', data);
|
||||
};
|
||||
|
||||
_messageCenter.getState = function(key) {
|
||||
return _state[key];
|
||||
};
|
||||
|
||||
_messageCenter.addMessageListener = function(listener) {
|
||||
_listeners[_listeners.length] = listener;
|
||||
};
|
||||
|
||||
_messageCenter.addStateListener = function(key, listener) {
|
||||
_stateListeners[_stateListeners.length] = {
|
||||
key: key,
|
||||
listener: listener
|
||||
};
|
||||
};
|
||||
|
||||
})();
|
||||