mirror of
https://github.com/jquery/jquery-ui.git
synced 2026-02-02 09:35:07 -05:00
Set svn:eol-style to native
This commit is contained in:
@@ -1,278 +1,278 @@
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
License is intended to guarantee your freedom to share and change free
|
||||
software--to make sure the software is free for all its users. This
|
||||
General Public License applies to most of the Free Software
|
||||
Foundation's software and to any other program whose authors commit to
|
||||
using it. (Some other Free Software Foundation software is covered by
|
||||
the GNU Lesser General Public License instead.) You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
this service if you wish), that you receive source code or can get it
|
||||
if you want it, that you can change the software or use pieces of it
|
||||
in new free programs; and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
anyone to deny you these rights or to ask you to surrender the rights.
|
||||
These restrictions translate to certain responsibilities for you if you
|
||||
distribute copies of the software, or if you modify it.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must give the recipients all the rights that
|
||||
you have. You must make sure that they, too, receive or can get the
|
||||
source code. And you must show them these terms so they know their
|
||||
rights.
|
||||
|
||||
We protect your rights with two steps: (1) copyright the software, and
|
||||
(2) offer you this license which gives you legal permission to copy,
|
||||
distribute and/or modify the software.
|
||||
|
||||
Also, for each author's protection and ours, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
software. If the software is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original, so
|
||||
that any problems introduced by others will not reflect on the original
|
||||
authors' reputations.
|
||||
|
||||
Finally, any free program is threatened constantly by software
|
||||
patents. We wish to avoid the danger that redistributors of a free
|
||||
program will individually obtain patent licenses, in effect making the
|
||||
program proprietary. To prevent this, we have made it clear that any
|
||||
patent must be licensed for everyone's free use or not licensed at all.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License applies to any program or other work which contains
|
||||
a notice placed by the copyright holder saying it may be distributed
|
||||
under the terms of this General Public License. The "Program", below,
|
||||
refers to any such program or work, and a "work based on the Program"
|
||||
means either the Program or any derivative work under copyright law:
|
||||
that is to say, a work containing the Program or a portion of it,
|
||||
either verbatim or with modifications and/or translated into another
|
||||
language. (Hereinafter, translation is included without limitation in
|
||||
the term "modification".) Each licensee is addressed as "you".
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running the Program is not restricted, and the output from the Program
|
||||
is covered only if its contents constitute a work based on the
|
||||
Program (independent of having been made by running the Program).
|
||||
Whether that is true depends on what the Program does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Program's
|
||||
source code as you receive it, in any medium, provided that you
|
||||
conspicuously and appropriately publish on each copy an appropriate
|
||||
copyright notice and disclaimer of warranty; keep intact all the
|
||||
notices that refer to this License and to the absence of any warranty;
|
||||
and give any other recipients of the Program a copy of this License
|
||||
along with the Program.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy, and
|
||||
you may at your option offer warranty protection in exchange for a fee.
|
||||
|
||||
2. You may modify your copy or copies of the Program or any portion
|
||||
of it, thus forming a work based on the Program, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) You must cause the modified files to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
b) You must cause any work that you distribute or publish, that in
|
||||
whole or in part contains or is derived from the Program or any
|
||||
part thereof, to be licensed as a whole at no charge to all third
|
||||
parties under the terms of this License.
|
||||
|
||||
c) If the modified program normally reads commands interactively
|
||||
when run, you must cause it, when started running for such
|
||||
interactive use in the most ordinary way, to print or display an
|
||||
announcement including an appropriate copyright notice and a
|
||||
notice that there is no warranty (or else, saying that you provide
|
||||
a warranty) and that users may redistribute the program under
|
||||
these conditions, and telling the user how to view a copy of this
|
||||
License. (Exception: if the Program itself is interactive but
|
||||
does not normally print such an announcement, your work based on
|
||||
the Program is not required to print an announcement.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Program,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Program, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Program.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Program
|
||||
with the Program (or with a work based on the Program) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may copy and distribute the Program (or a work based on it,
|
||||
under Section 2) in object code or executable form under the terms of
|
||||
Sections 1 and 2 above provided that you also do one of the following:
|
||||
|
||||
a) Accompany it with the complete corresponding machine-readable
|
||||
source code, which must be distributed under the terms of Sections
|
||||
1 and 2 above on a medium customarily used for software interchange; or,
|
||||
|
||||
b) Accompany it with a written offer, valid for at least three
|
||||
years, to give any third party, for a charge no more than your
|
||||
cost of physically performing source distribution, a complete
|
||||
machine-readable copy of the corresponding source code, to be
|
||||
distributed under the terms of Sections 1 and 2 above on a medium
|
||||
customarily used for software interchange; or,
|
||||
|
||||
c) Accompany it with the information you received as to the offer
|
||||
to distribute corresponding source code. (This alternative is
|
||||
allowed only for noncommercial distribution and only if you
|
||||
received the program in object code or executable form with such
|
||||
an offer, in accord with Subsection b above.)
|
||||
|
||||
The source code for a work means the preferred form of the work for
|
||||
making modifications to it. For an executable work, complete source
|
||||
code means all the source code for all modules it contains, plus any
|
||||
associated interface definition files, plus the scripts used to
|
||||
control compilation and installation of the executable. However, as a
|
||||
special exception, the source code distributed need not include
|
||||
anything that is normally distributed (in either source or binary
|
||||
form) with the major components (compiler, kernel, and so on) of the
|
||||
operating system on which the executable runs, unless that component
|
||||
itself accompanies the executable.
|
||||
|
||||
If distribution of executable or object code is made by offering
|
||||
access to copy from a designated place, then offering equivalent
|
||||
access to copy the source code from the same place counts as
|
||||
distribution of the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
4. You may not copy, modify, sublicense, or distribute the Program
|
||||
except as expressly provided under this License. Any attempt
|
||||
otherwise to copy, modify, sublicense or distribute the Program is
|
||||
void, and will automatically terminate your rights under this License.
|
||||
However, parties who have received copies, or rights, from you under
|
||||
this License will not have their licenses terminated so long as such
|
||||
parties remain in full compliance.
|
||||
|
||||
5. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Program or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Program (or any work based on the
|
||||
Program), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Program or works based on it.
|
||||
|
||||
6. Each time you redistribute the Program (or any work based on the
|
||||
Program), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute or modify the Program subject to
|
||||
these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties to
|
||||
this License.
|
||||
|
||||
7. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Program at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Program by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Program.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under
|
||||
any particular circumstance, the balance of the section is intended to
|
||||
apply and the section as a whole is intended to apply in other
|
||||
circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system, which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
8. If the distribution and/or use of the Program is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Program under this License
|
||||
may add an explicit geographical distribution limitation excluding
|
||||
those countries, so that distribution is permitted only in or among
|
||||
countries not thus excluded. In such case, this License incorporates
|
||||
the limitation as if written in the body of this License.
|
||||
|
||||
9. The Free Software Foundation may publish revised and/or new versions
|
||||
of the General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Program
|
||||
specifies a version number of this License which applies to it and "any
|
||||
later version", you have the option of following the terms and conditions
|
||||
either of that version or of any later version published by the Free
|
||||
Software Foundation. If the Program does not specify a version number of
|
||||
this License, you may choose any version ever published by the Free Software
|
||||
Foundation.
|
||||
|
||||
10. If you wish to incorporate parts of the Program into other free
|
||||
programs whose distribution conditions are different, write to the author
|
||||
to ask for permission. For software which is copyrighted by the Free
|
||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
||||
make exceptions for this. Our decision will be guided by the two goals
|
||||
of preserving the free status of all derivatives of our free software and
|
||||
of promoting the sharing and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
||||
REPAIR OR CORRECTION.
|
||||
|
||||
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
License is intended to guarantee your freedom to share and change free
|
||||
software--to make sure the software is free for all its users. This
|
||||
General Public License applies to most of the Free Software
|
||||
Foundation's software and to any other program whose authors commit to
|
||||
using it. (Some other Free Software Foundation software is covered by
|
||||
the GNU Lesser General Public License instead.) You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
this service if you wish), that you receive source code or can get it
|
||||
if you want it, that you can change the software or use pieces of it
|
||||
in new free programs; and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
anyone to deny you these rights or to ask you to surrender the rights.
|
||||
These restrictions translate to certain responsibilities for you if you
|
||||
distribute copies of the software, or if you modify it.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must give the recipients all the rights that
|
||||
you have. You must make sure that they, too, receive or can get the
|
||||
source code. And you must show them these terms so they know their
|
||||
rights.
|
||||
|
||||
We protect your rights with two steps: (1) copyright the software, and
|
||||
(2) offer you this license which gives you legal permission to copy,
|
||||
distribute and/or modify the software.
|
||||
|
||||
Also, for each author's protection and ours, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
software. If the software is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original, so
|
||||
that any problems introduced by others will not reflect on the original
|
||||
authors' reputations.
|
||||
|
||||
Finally, any free program is threatened constantly by software
|
||||
patents. We wish to avoid the danger that redistributors of a free
|
||||
program will individually obtain patent licenses, in effect making the
|
||||
program proprietary. To prevent this, we have made it clear that any
|
||||
patent must be licensed for everyone's free use or not licensed at all.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License applies to any program or other work which contains
|
||||
a notice placed by the copyright holder saying it may be distributed
|
||||
under the terms of this General Public License. The "Program", below,
|
||||
refers to any such program or work, and a "work based on the Program"
|
||||
means either the Program or any derivative work under copyright law:
|
||||
that is to say, a work containing the Program or a portion of it,
|
||||
either verbatim or with modifications and/or translated into another
|
||||
language. (Hereinafter, translation is included without limitation in
|
||||
the term "modification".) Each licensee is addressed as "you".
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running the Program is not restricted, and the output from the Program
|
||||
is covered only if its contents constitute a work based on the
|
||||
Program (independent of having been made by running the Program).
|
||||
Whether that is true depends on what the Program does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Program's
|
||||
source code as you receive it, in any medium, provided that you
|
||||
conspicuously and appropriately publish on each copy an appropriate
|
||||
copyright notice and disclaimer of warranty; keep intact all the
|
||||
notices that refer to this License and to the absence of any warranty;
|
||||
and give any other recipients of the Program a copy of this License
|
||||
along with the Program.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy, and
|
||||
you may at your option offer warranty protection in exchange for a fee.
|
||||
|
||||
2. You may modify your copy or copies of the Program or any portion
|
||||
of it, thus forming a work based on the Program, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) You must cause the modified files to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
b) You must cause any work that you distribute or publish, that in
|
||||
whole or in part contains or is derived from the Program or any
|
||||
part thereof, to be licensed as a whole at no charge to all third
|
||||
parties under the terms of this License.
|
||||
|
||||
c) If the modified program normally reads commands interactively
|
||||
when run, you must cause it, when started running for such
|
||||
interactive use in the most ordinary way, to print or display an
|
||||
announcement including an appropriate copyright notice and a
|
||||
notice that there is no warranty (or else, saying that you provide
|
||||
a warranty) and that users may redistribute the program under
|
||||
these conditions, and telling the user how to view a copy of this
|
||||
License. (Exception: if the Program itself is interactive but
|
||||
does not normally print such an announcement, your work based on
|
||||
the Program is not required to print an announcement.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Program,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Program, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Program.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Program
|
||||
with the Program (or with a work based on the Program) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may copy and distribute the Program (or a work based on it,
|
||||
under Section 2) in object code or executable form under the terms of
|
||||
Sections 1 and 2 above provided that you also do one of the following:
|
||||
|
||||
a) Accompany it with the complete corresponding machine-readable
|
||||
source code, which must be distributed under the terms of Sections
|
||||
1 and 2 above on a medium customarily used for software interchange; or,
|
||||
|
||||
b) Accompany it with a written offer, valid for at least three
|
||||
years, to give any third party, for a charge no more than your
|
||||
cost of physically performing source distribution, a complete
|
||||
machine-readable copy of the corresponding source code, to be
|
||||
distributed under the terms of Sections 1 and 2 above on a medium
|
||||
customarily used for software interchange; or,
|
||||
|
||||
c) Accompany it with the information you received as to the offer
|
||||
to distribute corresponding source code. (This alternative is
|
||||
allowed only for noncommercial distribution and only if you
|
||||
received the program in object code or executable form with such
|
||||
an offer, in accord with Subsection b above.)
|
||||
|
||||
The source code for a work means the preferred form of the work for
|
||||
making modifications to it. For an executable work, complete source
|
||||
code means all the source code for all modules it contains, plus any
|
||||
associated interface definition files, plus the scripts used to
|
||||
control compilation and installation of the executable. However, as a
|
||||
special exception, the source code distributed need not include
|
||||
anything that is normally distributed (in either source or binary
|
||||
form) with the major components (compiler, kernel, and so on) of the
|
||||
operating system on which the executable runs, unless that component
|
||||
itself accompanies the executable.
|
||||
|
||||
If distribution of executable or object code is made by offering
|
||||
access to copy from a designated place, then offering equivalent
|
||||
access to copy the source code from the same place counts as
|
||||
distribution of the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
4. You may not copy, modify, sublicense, or distribute the Program
|
||||
except as expressly provided under this License. Any attempt
|
||||
otherwise to copy, modify, sublicense or distribute the Program is
|
||||
void, and will automatically terminate your rights under this License.
|
||||
However, parties who have received copies, or rights, from you under
|
||||
this License will not have their licenses terminated so long as such
|
||||
parties remain in full compliance.
|
||||
|
||||
5. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Program or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Program (or any work based on the
|
||||
Program), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Program or works based on it.
|
||||
|
||||
6. Each time you redistribute the Program (or any work based on the
|
||||
Program), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute or modify the Program subject to
|
||||
these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties to
|
||||
this License.
|
||||
|
||||
7. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Program at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Program by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Program.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under
|
||||
any particular circumstance, the balance of the section is intended to
|
||||
apply and the section as a whole is intended to apply in other
|
||||
circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system, which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
8. If the distribution and/or use of the Program is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Program under this License
|
||||
may add an explicit geographical distribution limitation excluding
|
||||
those countries, so that distribution is permitted only in or among
|
||||
countries not thus excluded. In such case, this License incorporates
|
||||
the limitation as if written in the body of this License.
|
||||
|
||||
9. The Free Software Foundation may publish revised and/or new versions
|
||||
of the General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Program
|
||||
specifies a version number of this License which applies to it and "any
|
||||
later version", you have the option of following the terms and conditions
|
||||
either of that version or of any later version published by the Free
|
||||
Software Foundation. If the Program does not specify a version number of
|
||||
this License, you may choose any version ever published by the Free Software
|
||||
Foundation.
|
||||
|
||||
10. If you wish to incorporate parts of the Program into other free
|
||||
programs whose distribution conditions are different, write to the author
|
||||
to ask for permission. For software which is copyrighted by the Free
|
||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
||||
make exceptions for this. Our decision will be guided by the two goals
|
||||
of preserving the free status of all derivatives of our free software and
|
||||
of promoting the sharing and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
||||
REPAIR OR CORRECTION.
|
||||
|
||||
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
@@ -1,20 +1,20 @@
|
||||
Copyright (c) 2007 John Resig, http://jquery.com/
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
Copyright (c) 2007 John Resig, http://jquery.com/
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
@@ -1,257 +1,257 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
|
||||
<title>Slide Demo - Fixed Drawer</title>
|
||||
<style type="text/css" media="screen">
|
||||
<!--
|
||||
/*************************************/
|
||||
/* Blueprint: reset.css */
|
||||
|
||||
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,
|
||||
dl, dt, dd, ol, ul, li,
|
||||
fieldset, form, label, legend,
|
||||
table, caption, tbody, tfoot, thead, tr, th, td {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: 0;
|
||||
outline: 0;
|
||||
font-weight: inherit;
|
||||
font-style: inherit;
|
||||
font-size: 100%;
|
||||
font-family: inherit;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
/* Remember to define focus styles! */
|
||||
:focus {
|
||||
outline: 0;
|
||||
}
|
||||
body {
|
||||
line-height: 1;
|
||||
color: black;
|
||||
background: white;
|
||||
}
|
||||
ol, ul {
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
/* Tables still need 'cellspacing="0"' in the markup. */
|
||||
table {
|
||||
border-collapse: separate;
|
||||
border-spacing: 0;
|
||||
}
|
||||
caption, th, td {
|
||||
text-align: left;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
/* Remove possible quote marks (") from <q>, <blockquote>. */
|
||||
blockquote:before, blockquote:after,
|
||||
q:before, q:after {
|
||||
content: "";
|
||||
}
|
||||
blockquote, q {
|
||||
quotes: "" "";
|
||||
}
|
||||
|
||||
/*************************************/
|
||||
/* Demo Styles */
|
||||
.capt,
|
||||
.capb {
|
||||
background: url("images/caps.gif") no-repeat;
|
||||
height:4px;
|
||||
width:100%;
|
||||
/*position:absolute;*/
|
||||
z-index:100;
|
||||
margin:0px;
|
||||
padding:0px;
|
||||
}
|
||||
.capt {
|
||||
position:absolute;
|
||||
background-position:0 -4px;
|
||||
}
|
||||
.capb {
|
||||
margin-top:-19px;
|
||||
}
|
||||
#content {
|
||||
float:left;
|
||||
}
|
||||
.drawers-wrapper {
|
||||
position: relative;
|
||||
width: 188px;
|
||||
float:left;
|
||||
margin:10px;
|
||||
}
|
||||
.drawers {
|
||||
margin-bottom:15px;
|
||||
color:#76797C;
|
||||
font-size:11px;
|
||||
line-height: 18px;
|
||||
}
|
||||
.drawer {
|
||||
background:transparent url(images/sideboxlight_bg.gif) repeat-y scroll 0pt;
|
||||
color:#76797C;
|
||||
font-size:11px;
|
||||
line-height:1.3em;
|
||||
}
|
||||
.drawer-handle {
|
||||
background:#939393 url(images/slider_handlebg.png) no-repeat scroll 0pt;
|
||||
color:#333333;
|
||||
cursor:default;
|
||||
height:25px;
|
||||
line-height:25px;
|
||||
text-indent:15px;
|
||||
font-size:12px;
|
||||
width:100%;
|
||||
}
|
||||
.drawer-handle.open {
|
||||
background-color:#72839D;
|
||||
background-position:-188px 0pt;
|
||||
color:#FFFFFF;
|
||||
}
|
||||
|
||||
/* nasty, but it fixes the indent on the first one. */
|
||||
h2.drawer-handle span {
|
||||
|
||||
}
|
||||
.drawer ul {
|
||||
padding: 0 12px;
|
||||
padding-bottom:0pt;
|
||||
}
|
||||
.drawer li {
|
||||
border-bottom:1px solid #E5E5E5;
|
||||
line-height:16px;
|
||||
padding:6px 0pt;
|
||||
}
|
||||
.drawer-content ul {
|
||||
padding-top: 7px;
|
||||
}
|
||||
.drawer-content li a {
|
||||
display:block;
|
||||
overflow:hidden;
|
||||
}
|
||||
.alldownloads li {
|
||||
border:0pt none;
|
||||
line-height:18px;
|
||||
padding:0pt;
|
||||
}
|
||||
|
||||
.drawers a {
|
||||
color:#666666;
|
||||
text-decoration:none;
|
||||
font-family:"Lucida Grande",Geneva,Arial,Verdana,sans-serif;
|
||||
}
|
||||
-->
|
||||
</style>
|
||||
|
||||
<script type="text/javascript" src="../../../../jquery/jquery-1.2.6.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../../../source/ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.accordion.js"></script>
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
$(function () {
|
||||
$('ul.drawers').accordion({
|
||||
header: 'h2.drawer-handle',
|
||||
selectedClass: 'open',
|
||||
event: 'mouseover'
|
||||
});
|
||||
});
|
||||
//-->
|
||||
</script>
|
||||
</head>
|
||||
<body id="page">
|
||||
<div id="content">
|
||||
<h1>Fixed drawer slide out demo (using accordion plugin)</h1>
|
||||
<p>This example demonstrates the Apple downloads slider/accordion effect using the jQuery Accordion plugin.</p>
|
||||
<p>Mouse over the headings to reveal the list of available links.</p>
|
||||
|
||||
<p>
|
||||
<a href="http://jqueryfordesigners.com/slide-out-and-drawer-effect/">Read the article this demonstration relates to</a>
|
||||
</p>
|
||||
</div>
|
||||
<div class="drawers-wrapper">
|
||||
<ul class="drawers">
|
||||
<li class="drawer">
|
||||
<h2 class="drawer-handle open">
|
||||
<div class="capt"></div>
|
||||
<span>Downloads</span>
|
||||
</h2>
|
||||
<ul class="alldownloads">
|
||||
<li id="sn-downloadsmacosx"><a href="/downloads/macosx/">All Categories</a></li>
|
||||
<li id="sn-aperture"><a href="/downloads/macosx/aperture/">Aperture</a></li>
|
||||
<li id="sn-apple"><a href="/downloads/macosx/apple/">Apple</a></li>
|
||||
<li id="sn-audio"><a href="/downloads/macosx/audio/">Audio</a></li>
|
||||
<li id="sn-automator"><a href="/downloads/macosx/automator/">Automator Actions</a></li>
|
||||
<li id="sn-businessfinance"><a href="/downloads/macosx/business_finance/">Business & Finance</a></li>
|
||||
<li id="sn-calendars"><a href="/downloads/macosx/calendars/">Calendars</a></li>
|
||||
<li id="sn-developmenttools"><a href="/downloads/macosx/development_tools/">Development Tools</a></li>
|
||||
<li id="sn-drivers"><a href="/downloads/macosx/drivers/">Drivers</a></li>
|
||||
<li id="sn-emailchat"><a href="/downloads/macosx/email_chat/">Email & Chat</a></li>
|
||||
<li id="sn-finalcutstudio"><a href="/downloads/macosx/finalcutstudio/">Final Cut Studio</a></li>
|
||||
<li id="sn-games"><a href="/downloads/macosx/games/">Games</a></li>
|
||||
<li id="sn-homelearning"><a href="/downloads/macosx/home_learning/">Home & Learning</a></li>
|
||||
<li id="sn-iconsscreensavers"><a href="/downloads/macosx/icons_screensavers/">Icons, Screensavers, etc.</a></li>
|
||||
<li id="sn-imaging3d"><a href="/downloads/macosx/imaging_3d/">Imaging & 3D</a></li>
|
||||
<li id="sn-internetutilities"><a href="/downloads/macosx/internet_utilities/">Internet Utilities</a></li>
|
||||
<li id="sn-ipoditunes"><a href="/downloads/macosx/ipod_itunes/">iPod + iTunes</a></li>
|
||||
<li id="sn-mathscience"><a href="/downloads/macosx/math_science/">Math & Science</a></li>
|
||||
<li id="sn-networkingsecurity"><a href="/downloads/macosx/networking_security/">Networking & Security</a></li>
|
||||
<li id="sn-productivitytools"><a href="/downloads/macosx/productivity_tools/">Productivity Tools</a></li>
|
||||
<li id="sn-spotlight"><a href="/downloads/macosx/spotlight/">Spotlight Plugins</a></li>
|
||||
<li id="sn-systemdiskutilities"><a href="/downloads/macosx/system_disk_utilities/">System/Disk Utilities</a></li>
|
||||
<li id="sn-unixopensource"><a href="/downloads/macosx/unix_open_source/">UNIX & Open Source</a></li>
|
||||
<li id="sn-video"><a href="/downloads/macosx/video/">Video</a></li>
|
||||
<li id="sn-dashboard"><a href="/downloads/dashboard/" class="bottom">Widgets</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="drawer">
|
||||
<h2 class="drawer-handle">Top Downloads</h2>
|
||||
<ul>
|
||||
<li><a title="iTunes 7.5" href="http://www.apple.com/itunes/download/">1. iTunes 7.5</a></li>
|
||||
<li><a title="QuickTime 7.3.1" href="http://www.apple.com/quicktime/download/">2. QuickTime 7.3.1</a></li>
|
||||
<li><a title="Safari 3 Public Beta" href="http://www.apple.com/safari/download/">3. Safari 3 Public Beta</a></li>
|
||||
<li><a title="MacPool" href="/downloads/macosx/games/simulation_and_sports/macpool.html">4. MacPool Realistic and easy to play computer simu…</a></li>
|
||||
<li><a title="Guitar Hero III: Legends of Rock" href="/downloads/macosx/games/demos_updates/guitarheroiiilegendsofrock.html">5. Guitar Hero III: L…</a></li>
|
||||
<li><a title="Messenger for Mac" href="/downloads/macosx/email_chat/messengerformac.html">6. Messenger for Mac</a></li>
|
||||
<li><a title="Google Earth" href="/downloads/macosx/home_learning/googleearth.html">7. Google Earth</a></li>
|
||||
<li><a title="Monopoly" href="/downloads/macosx/games/cards_puzzle/monopoly.html">8. Monopoly</a></li>
|
||||
<li><a title="Litho System Icons" href="/downloads/macosx/icons_screensavers/lithosystemicons.html">9. Litho System Icons</a></li>
|
||||
<li><a title="Battlefield 2142" href="/downloads/macosx/games/demos_updates/battlefield2142.html">10. Battlefield 2142</a></li>
|
||||
<li><a title="More iChat Effects" href="/downloads/macosx/email_chat/moreichateffects.html">11. More iChat Effects</a></li>
|
||||
<li><a title="Dragster" href="/downloads/macosx/internet_utilities/dragster.html">12. Dragster</a></li>
|
||||
<li><a title="iSquint" href="/downloads/macosx/ipod_itunes/isquint.html">13. iSquint</a></li>
|
||||
<li class="last"><a title="US Holiday Calendar" href="/downloads/macosx/calendars/usholidaycalendar.html">14. US Holiday Calendar</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="drawer last">
|
||||
<h2 class="drawer-handle">Top Apple Downloads</h2>
|
||||
<ul>
|
||||
<li><a title="iTunes 7.5" href="http://www.apple.com/itunes/download/">1. iTunes 7.5</a></li>
|
||||
<li><a title="QuickTime 7.3.1" href="http://www.apple.com/quicktime/download/">2. QuickTime 7.3.1</a></li>
|
||||
<li><a title="Safari 3 Public Beta" href="http://www.apple.com/safari/download/">3. Safari 3 Public Beta</a></li>
|
||||
<li><a title="Mac OS X 10.5.1 Update" href="/downloads/macosx/apple/macosx_updates/macosx1051update.html">4. Mac OS X 10.5.1 Up…</a></li>
|
||||
<li><a title="Java for Mac OS X 10.4 Release 5" href="/downloads/macosx/apple/macosx_updates/javaformacosx104release5.html">5. Java for Mac OS X …</a></li>
|
||||
<li><a title="iPod Reset Utility 1.0.2 for Windows" href="/downloads/macosx/apple/ipod_itunes/ipodresetutility102forwindows.html">6. iPod Reset Utility…</a></li>
|
||||
<li><a title="iPhoto 7.1.1" href="/downloads/macosx/apple/application_updates/iphoto711.html">7. iPhoto 7.1.1</a></li>
|
||||
<li><a title="Bonjour for Windows" href="/downloads/macosx/apple/windows/bonjourforwindows.html">8. Bonjour for Windows</a></li>
|
||||
<li><a title="Mac OS X 10.4.11 Combo Update (PPC)" href="/downloads/macosx/apple/macosx_updates/macosx10411comboupdateppc.html">9. Mac OS X 10.4.11 C…<br/>The 10.4.11 Update is recommended for al…</a></li>
|
||||
<li><a title="Java for Mac OS X 10.4, Release 6" href="/downloads/macosx/apple/macosx_updates/javaformacosx104release6.html">10. Java for Mac OS X …</a></li>
|
||||
<li><a title="GarageBand 4.1.1" href="/downloads/macosx/apple/application_updates/garageband411.html">11. GarageBand 4.1.1</a></li>
|
||||
<li><a title="iPod Updater 2006-06-28 for Windows" href="/downloads/macosx/apple/ipod_itunes/ipodupdater20060628forwindows.html">12. iPod Updater 2006-…</a></li>
|
||||
<li><a title="Security Update 2007-009 1.1 (10.4.11 Universal)" href="/downloads/macosx/apple/security_updates/securityupdate20070091110411universal.html">13. Security Update 20…</a></li>
|
||||
<li class="last"><a title="Security Update 2007-009 1.1 (10.5.1)" href="/downloads/macosx/apple/security_updates/securityupdate2007009111051.html">14. Security Update 20…</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="capb"></div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
|
||||
<title>Slide Demo - Fixed Drawer</title>
|
||||
<style type="text/css" media="screen">
|
||||
<!--
|
||||
/*************************************/
|
||||
/* Blueprint: reset.css */
|
||||
|
||||
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,
|
||||
dl, dt, dd, ol, ul, li,
|
||||
fieldset, form, label, legend,
|
||||
table, caption, tbody, tfoot, thead, tr, th, td {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: 0;
|
||||
outline: 0;
|
||||
font-weight: inherit;
|
||||
font-style: inherit;
|
||||
font-size: 100%;
|
||||
font-family: inherit;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
/* Remember to define focus styles! */
|
||||
:focus {
|
||||
outline: 0;
|
||||
}
|
||||
body {
|
||||
line-height: 1;
|
||||
color: black;
|
||||
background: white;
|
||||
}
|
||||
ol, ul {
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
/* Tables still need 'cellspacing="0"' in the markup. */
|
||||
table {
|
||||
border-collapse: separate;
|
||||
border-spacing: 0;
|
||||
}
|
||||
caption, th, td {
|
||||
text-align: left;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
/* Remove possible quote marks (") from <q>, <blockquote>. */
|
||||
blockquote:before, blockquote:after,
|
||||
q:before, q:after {
|
||||
content: "";
|
||||
}
|
||||
blockquote, q {
|
||||
quotes: "" "";
|
||||
}
|
||||
|
||||
/*************************************/
|
||||
/* Demo Styles */
|
||||
.capt,
|
||||
.capb {
|
||||
background: url("images/caps.gif") no-repeat;
|
||||
height:4px;
|
||||
width:100%;
|
||||
/*position:absolute;*/
|
||||
z-index:100;
|
||||
margin:0px;
|
||||
padding:0px;
|
||||
}
|
||||
.capt {
|
||||
position:absolute;
|
||||
background-position:0 -4px;
|
||||
}
|
||||
.capb {
|
||||
margin-top:-19px;
|
||||
}
|
||||
#content {
|
||||
float:left;
|
||||
}
|
||||
.drawers-wrapper {
|
||||
position: relative;
|
||||
width: 188px;
|
||||
float:left;
|
||||
margin:10px;
|
||||
}
|
||||
.drawers {
|
||||
margin-bottom:15px;
|
||||
color:#76797C;
|
||||
font-size:11px;
|
||||
line-height: 18px;
|
||||
}
|
||||
.drawer {
|
||||
background:transparent url(images/sideboxlight_bg.gif) repeat-y scroll 0pt;
|
||||
color:#76797C;
|
||||
font-size:11px;
|
||||
line-height:1.3em;
|
||||
}
|
||||
.drawer-handle {
|
||||
background:#939393 url(images/slider_handlebg.png) no-repeat scroll 0pt;
|
||||
color:#333333;
|
||||
cursor:default;
|
||||
height:25px;
|
||||
line-height:25px;
|
||||
text-indent:15px;
|
||||
font-size:12px;
|
||||
width:100%;
|
||||
}
|
||||
.drawer-handle.open {
|
||||
background-color:#72839D;
|
||||
background-position:-188px 0pt;
|
||||
color:#FFFFFF;
|
||||
}
|
||||
|
||||
/* nasty, but it fixes the indent on the first one. */
|
||||
h2.drawer-handle span {
|
||||
|
||||
}
|
||||
.drawer ul {
|
||||
padding: 0 12px;
|
||||
padding-bottom:0pt;
|
||||
}
|
||||
.drawer li {
|
||||
border-bottom:1px solid #E5E5E5;
|
||||
line-height:16px;
|
||||
padding:6px 0pt;
|
||||
}
|
||||
.drawer-content ul {
|
||||
padding-top: 7px;
|
||||
}
|
||||
.drawer-content li a {
|
||||
display:block;
|
||||
overflow:hidden;
|
||||
}
|
||||
.alldownloads li {
|
||||
border:0pt none;
|
||||
line-height:18px;
|
||||
padding:0pt;
|
||||
}
|
||||
|
||||
.drawers a {
|
||||
color:#666666;
|
||||
text-decoration:none;
|
||||
font-family:"Lucida Grande",Geneva,Arial,Verdana,sans-serif;
|
||||
}
|
||||
-->
|
||||
</style>
|
||||
|
||||
<script type="text/javascript" src="../../../../jquery/jquery-1.2.6.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../../../source/ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.accordion.js"></script>
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
$(function () {
|
||||
$('ul.drawers').accordion({
|
||||
header: 'h2.drawer-handle',
|
||||
selectedClass: 'open',
|
||||
event: 'mouseover'
|
||||
});
|
||||
});
|
||||
//-->
|
||||
</script>
|
||||
</head>
|
||||
<body id="page">
|
||||
<div id="content">
|
||||
<h1>Fixed drawer slide out demo (using accordion plugin)</h1>
|
||||
<p>This example demonstrates the Apple downloads slider/accordion effect using the jQuery Accordion plugin.</p>
|
||||
<p>Mouse over the headings to reveal the list of available links.</p>
|
||||
|
||||
<p>
|
||||
<a href="http://jqueryfordesigners.com/slide-out-and-drawer-effect/">Read the article this demonstration relates to</a>
|
||||
</p>
|
||||
</div>
|
||||
<div class="drawers-wrapper">
|
||||
<ul class="drawers">
|
||||
<li class="drawer">
|
||||
<h2 class="drawer-handle open">
|
||||
<div class="capt"></div>
|
||||
<span>Downloads</span>
|
||||
</h2>
|
||||
<ul class="alldownloads">
|
||||
<li id="sn-downloadsmacosx"><a href="/downloads/macosx/">All Categories</a></li>
|
||||
<li id="sn-aperture"><a href="/downloads/macosx/aperture/">Aperture</a></li>
|
||||
<li id="sn-apple"><a href="/downloads/macosx/apple/">Apple</a></li>
|
||||
<li id="sn-audio"><a href="/downloads/macosx/audio/">Audio</a></li>
|
||||
<li id="sn-automator"><a href="/downloads/macosx/automator/">Automator Actions</a></li>
|
||||
<li id="sn-businessfinance"><a href="/downloads/macosx/business_finance/">Business & Finance</a></li>
|
||||
<li id="sn-calendars"><a href="/downloads/macosx/calendars/">Calendars</a></li>
|
||||
<li id="sn-developmenttools"><a href="/downloads/macosx/development_tools/">Development Tools</a></li>
|
||||
<li id="sn-drivers"><a href="/downloads/macosx/drivers/">Drivers</a></li>
|
||||
<li id="sn-emailchat"><a href="/downloads/macosx/email_chat/">Email & Chat</a></li>
|
||||
<li id="sn-finalcutstudio"><a href="/downloads/macosx/finalcutstudio/">Final Cut Studio</a></li>
|
||||
<li id="sn-games"><a href="/downloads/macosx/games/">Games</a></li>
|
||||
<li id="sn-homelearning"><a href="/downloads/macosx/home_learning/">Home & Learning</a></li>
|
||||
<li id="sn-iconsscreensavers"><a href="/downloads/macosx/icons_screensavers/">Icons, Screensavers, etc.</a></li>
|
||||
<li id="sn-imaging3d"><a href="/downloads/macosx/imaging_3d/">Imaging & 3D</a></li>
|
||||
<li id="sn-internetutilities"><a href="/downloads/macosx/internet_utilities/">Internet Utilities</a></li>
|
||||
<li id="sn-ipoditunes"><a href="/downloads/macosx/ipod_itunes/">iPod + iTunes</a></li>
|
||||
<li id="sn-mathscience"><a href="/downloads/macosx/math_science/">Math & Science</a></li>
|
||||
<li id="sn-networkingsecurity"><a href="/downloads/macosx/networking_security/">Networking & Security</a></li>
|
||||
<li id="sn-productivitytools"><a href="/downloads/macosx/productivity_tools/">Productivity Tools</a></li>
|
||||
<li id="sn-spotlight"><a href="/downloads/macosx/spotlight/">Spotlight Plugins</a></li>
|
||||
<li id="sn-systemdiskutilities"><a href="/downloads/macosx/system_disk_utilities/">System/Disk Utilities</a></li>
|
||||
<li id="sn-unixopensource"><a href="/downloads/macosx/unix_open_source/">UNIX & Open Source</a></li>
|
||||
<li id="sn-video"><a href="/downloads/macosx/video/">Video</a></li>
|
||||
<li id="sn-dashboard"><a href="/downloads/dashboard/" class="bottom">Widgets</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="drawer">
|
||||
<h2 class="drawer-handle">Top Downloads</h2>
|
||||
<ul>
|
||||
<li><a title="iTunes 7.5" href="http://www.apple.com/itunes/download/">1. iTunes 7.5</a></li>
|
||||
<li><a title="QuickTime 7.3.1" href="http://www.apple.com/quicktime/download/">2. QuickTime 7.3.1</a></li>
|
||||
<li><a title="Safari 3 Public Beta" href="http://www.apple.com/safari/download/">3. Safari 3 Public Beta</a></li>
|
||||
<li><a title="MacPool" href="/downloads/macosx/games/simulation_and_sports/macpool.html">4. MacPool Realistic and easy to play computer simu…</a></li>
|
||||
<li><a title="Guitar Hero III: Legends of Rock" href="/downloads/macosx/games/demos_updates/guitarheroiiilegendsofrock.html">5. Guitar Hero III: L…</a></li>
|
||||
<li><a title="Messenger for Mac" href="/downloads/macosx/email_chat/messengerformac.html">6. Messenger for Mac</a></li>
|
||||
<li><a title="Google Earth" href="/downloads/macosx/home_learning/googleearth.html">7. Google Earth</a></li>
|
||||
<li><a title="Monopoly" href="/downloads/macosx/games/cards_puzzle/monopoly.html">8. Monopoly</a></li>
|
||||
<li><a title="Litho System Icons" href="/downloads/macosx/icons_screensavers/lithosystemicons.html">9. Litho System Icons</a></li>
|
||||
<li><a title="Battlefield 2142" href="/downloads/macosx/games/demos_updates/battlefield2142.html">10. Battlefield 2142</a></li>
|
||||
<li><a title="More iChat Effects" href="/downloads/macosx/email_chat/moreichateffects.html">11. More iChat Effects</a></li>
|
||||
<li><a title="Dragster" href="/downloads/macosx/internet_utilities/dragster.html">12. Dragster</a></li>
|
||||
<li><a title="iSquint" href="/downloads/macosx/ipod_itunes/isquint.html">13. iSquint</a></li>
|
||||
<li class="last"><a title="US Holiday Calendar" href="/downloads/macosx/calendars/usholidaycalendar.html">14. US Holiday Calendar</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="drawer last">
|
||||
<h2 class="drawer-handle">Top Apple Downloads</h2>
|
||||
<ul>
|
||||
<li><a title="iTunes 7.5" href="http://www.apple.com/itunes/download/">1. iTunes 7.5</a></li>
|
||||
<li><a title="QuickTime 7.3.1" href="http://www.apple.com/quicktime/download/">2. QuickTime 7.3.1</a></li>
|
||||
<li><a title="Safari 3 Public Beta" href="http://www.apple.com/safari/download/">3. Safari 3 Public Beta</a></li>
|
||||
<li><a title="Mac OS X 10.5.1 Update" href="/downloads/macosx/apple/macosx_updates/macosx1051update.html">4. Mac OS X 10.5.1 Up…</a></li>
|
||||
<li><a title="Java for Mac OS X 10.4 Release 5" href="/downloads/macosx/apple/macosx_updates/javaformacosx104release5.html">5. Java for Mac OS X …</a></li>
|
||||
<li><a title="iPod Reset Utility 1.0.2 for Windows" href="/downloads/macosx/apple/ipod_itunes/ipodresetutility102forwindows.html">6. iPod Reset Utility…</a></li>
|
||||
<li><a title="iPhoto 7.1.1" href="/downloads/macosx/apple/application_updates/iphoto711.html">7. iPhoto 7.1.1</a></li>
|
||||
<li><a title="Bonjour for Windows" href="/downloads/macosx/apple/windows/bonjourforwindows.html">8. Bonjour for Windows</a></li>
|
||||
<li><a title="Mac OS X 10.4.11 Combo Update (PPC)" href="/downloads/macosx/apple/macosx_updates/macosx10411comboupdateppc.html">9. Mac OS X 10.4.11 C…<br/>The 10.4.11 Update is recommended for al…</a></li>
|
||||
<li><a title="Java for Mac OS X 10.4, Release 6" href="/downloads/macosx/apple/macosx_updates/javaformacosx104release6.html">10. Java for Mac OS X …</a></li>
|
||||
<li><a title="GarageBand 4.1.1" href="/downloads/macosx/apple/application_updates/garageband411.html">11. GarageBand 4.1.1</a></li>
|
||||
<li><a title="iPod Updater 2006-06-28 for Windows" href="/downloads/macosx/apple/ipod_itunes/ipodupdater20060628forwindows.html">12. iPod Updater 2006-…</a></li>
|
||||
<li><a title="Security Update 2007-009 1.1 (10.4.11 Universal)" href="/downloads/macosx/apple/security_updates/securityupdate20070091110411universal.html">13. Security Update 20…</a></li>
|
||||
<li class="last"><a title="Security Update 2007-009 1.1 (10.5.1)" href="/downloads/macosx/apple/security_updates/securityupdate2007009111051.html">14. Security Update 20…</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="capb"></div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -1,65 +1,65 @@
|
||||
$(document).ready(function() {
|
||||
|
||||
$("div.effect")
|
||||
.hover(function() {
|
||||
$(this).addClass("hover");
|
||||
}, function() {
|
||||
$(this).removeClass("hover");
|
||||
})
|
||||
;
|
||||
|
||||
|
||||
var effect = function(el, n, o) {
|
||||
|
||||
$.extend(o, {
|
||||
easing: "easeOutQuint"
|
||||
});
|
||||
|
||||
$(el).bind("click", function() {
|
||||
|
||||
$(this).addClass("current").hide(n, o, 1000, function() {
|
||||
var self = this;
|
||||
window.setTimeout(function() {
|
||||
$(self).show(n, o, 1000, function() { $(this).removeClass("current"); });
|
||||
},500);
|
||||
});
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
|
||||
effect("#blindHorizontally", "blind", { direction: "horizontal" });
|
||||
effect("#blindVertically", "blind", { direction: "vertical" });
|
||||
|
||||
effect("#bounce3times", "bounce", { times: 3 });
|
||||
|
||||
effect("#clipHorizontally", "clip", { direction: "horizontal" });
|
||||
effect("#clipVertically", "clip", { direction: "vertical" });
|
||||
|
||||
effect("#dropDown", "drop", { direction: "down" });
|
||||
effect("#dropUp", "drop", { direction: "up" });
|
||||
effect("#dropLeft", "drop", { direction: "left" });
|
||||
effect("#dropRight", "drop", { direction: "right" });
|
||||
|
||||
effect("#explode9", "explode", { });
|
||||
effect("#explode36", "explode", { pieces: 36 });
|
||||
|
||||
effect("#fold", "fold", { size: 50 });
|
||||
|
||||
effect("#highlight", "highlight", { });
|
||||
|
||||
effect("#pulsate", "pulsate", { times: 2 });
|
||||
|
||||
effect("#puff", "puff", { times: 2 });
|
||||
effect("#scale", "scale", { });
|
||||
|
||||
$("#shake").bind("click", function() { $(this).addClass("current").effect("shake", {}, 100, function() { $(this).removeClass("current"); }); });
|
||||
|
||||
effect("#slideDown", "slide", { direction: "down" });
|
||||
effect("#slideUp", "slide", { direction: "up" });
|
||||
effect("#slideLeft", "slide", { direction: "left" });
|
||||
effect("#slideRight", "slide", { direction: "right" });
|
||||
|
||||
$("#transfer").bind("click", function() { $(this).addClass("current").effect("transfer", { to: "div:eq(0)" }, 1000, function() { $(this).removeClass("current"); }); });
|
||||
|
||||
$(document).ready(function() {
|
||||
|
||||
$("div.effect")
|
||||
.hover(function() {
|
||||
$(this).addClass("hover");
|
||||
}, function() {
|
||||
$(this).removeClass("hover");
|
||||
})
|
||||
;
|
||||
|
||||
|
||||
var effect = function(el, n, o) {
|
||||
|
||||
$.extend(o, {
|
||||
easing: "easeOutQuint"
|
||||
});
|
||||
|
||||
$(el).bind("click", function() {
|
||||
|
||||
$(this).addClass("current").hide(n, o, 1000, function() {
|
||||
var self = this;
|
||||
window.setTimeout(function() {
|
||||
$(self).show(n, o, 1000, function() { $(this).removeClass("current"); });
|
||||
},500);
|
||||
});
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
|
||||
effect("#blindHorizontally", "blind", { direction: "horizontal" });
|
||||
effect("#blindVertically", "blind", { direction: "vertical" });
|
||||
|
||||
effect("#bounce3times", "bounce", { times: 3 });
|
||||
|
||||
effect("#clipHorizontally", "clip", { direction: "horizontal" });
|
||||
effect("#clipVertically", "clip", { direction: "vertical" });
|
||||
|
||||
effect("#dropDown", "drop", { direction: "down" });
|
||||
effect("#dropUp", "drop", { direction: "up" });
|
||||
effect("#dropLeft", "drop", { direction: "left" });
|
||||
effect("#dropRight", "drop", { direction: "right" });
|
||||
|
||||
effect("#explode9", "explode", { });
|
||||
effect("#explode36", "explode", { pieces: 36 });
|
||||
|
||||
effect("#fold", "fold", { size: 50 });
|
||||
|
||||
effect("#highlight", "highlight", { });
|
||||
|
||||
effect("#pulsate", "pulsate", { times: 2 });
|
||||
|
||||
effect("#puff", "puff", { times: 2 });
|
||||
effect("#scale", "scale", { });
|
||||
|
||||
$("#shake").bind("click", function() { $(this).addClass("current").effect("shake", {}, 100, function() { $(this).removeClass("current"); }); });
|
||||
|
||||
effect("#slideDown", "slide", { direction: "down" });
|
||||
effect("#slideUp", "slide", { direction: "up" });
|
||||
effect("#slideLeft", "slide", { direction: "left" });
|
||||
effect("#slideRight", "slide", { direction: "right" });
|
||||
|
||||
$("#transfer").bind("click", function() { $(this).addClass("current").effect("transfer", { to: "div:eq(0)" }, 1000, function() { $(this).removeClass("current"); }); });
|
||||
|
||||
});
|
||||
@@ -1,120 +1,120 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
|
||||
<title>Effects Test Suite</title>
|
||||
<link rel="stylesheet" href="style.css" type="text/css" media="screen" title="no title" charset="utf-8" />
|
||||
|
||||
<script type="text/javascript" src="../../../../jquery/jquery-1.2.6.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.core.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../../../source/effects.blind.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.bounce.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.clip.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.drop.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.explode.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.fold.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.highlight.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.pulsate.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.scale.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.shake.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.slide.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.transfer.js"></script>
|
||||
|
||||
<script type="text/javascript" src="demo.js"></script>
|
||||
|
||||
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="effect" id="blindHorizontally">
|
||||
<p>Blind horizontally</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="blindVertically">
|
||||
<p>Blind vertically</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="bounce3times">
|
||||
<p>Bounce 3 times</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="clipHorizontally">
|
||||
<p>Clip horizontally</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="clipVertically">
|
||||
<p>Clip vertically</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="dropDown">
|
||||
<p>Drop down</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="dropUp">
|
||||
<p>Drop up</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="dropLeft">
|
||||
<p>Drop left</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="dropRight">
|
||||
<p>Drop right</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="explode9">
|
||||
<p>Explode in 9 pieces</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="explode36">
|
||||
<p>Explode in 36 pieces</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="fold">
|
||||
<p>Fold</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="highlight">
|
||||
<p>Highlight</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="pulsate">
|
||||
<p>Pulsate 2 times</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="puff">
|
||||
<p>Puff</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="scale">
|
||||
<p>Scale</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="shake">
|
||||
<p>Shake</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="slideDown">
|
||||
<p>Slide down</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="slideUp">
|
||||
<p>Slide up</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="slideLeft">
|
||||
<p>Slide left</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="slideRight">
|
||||
<p>Slide right</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="transfer">
|
||||
<p>Transfer to first element</p>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
|
||||
<title>Effects Test Suite</title>
|
||||
<link rel="stylesheet" href="style.css" type="text/css" media="screen" title="no title" charset="utf-8" />
|
||||
|
||||
<script type="text/javascript" src="../../../../jquery/jquery-1.2.6.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.core.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../../../source/effects.blind.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.bounce.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.clip.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.drop.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.explode.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.fold.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.highlight.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.pulsate.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.scale.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.shake.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.slide.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.transfer.js"></script>
|
||||
|
||||
<script type="text/javascript" src="demo.js"></script>
|
||||
|
||||
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="effect" id="blindHorizontally">
|
||||
<p>Blind horizontally</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="blindVertically">
|
||||
<p>Blind vertically</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="bounce3times">
|
||||
<p>Bounce 3 times</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="clipHorizontally">
|
||||
<p>Clip horizontally</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="clipVertically">
|
||||
<p>Clip vertically</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="dropDown">
|
||||
<p>Drop down</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="dropUp">
|
||||
<p>Drop up</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="dropLeft">
|
||||
<p>Drop left</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="dropRight">
|
||||
<p>Drop right</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="explode9">
|
||||
<p>Explode in 9 pieces</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="explode36">
|
||||
<p>Explode in 36 pieces</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="fold">
|
||||
<p>Fold</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="highlight">
|
||||
<p>Highlight</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="pulsate">
|
||||
<p>Pulsate 2 times</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="puff">
|
||||
<p>Puff</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="scale">
|
||||
<p>Scale</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="shake">
|
||||
<p>Shake</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="slideDown">
|
||||
<p>Slide down</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="slideUp">
|
||||
<p>Slide up</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="slideLeft">
|
||||
<p>Slide left</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="slideRight">
|
||||
<p>Slide right</p>
|
||||
</div>
|
||||
|
||||
<div class="effect" id="transfer">
|
||||
<p>Transfer to first element</p>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,36 +1,36 @@
|
||||
body,html {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-size: 12px;
|
||||
font-family: Arial;
|
||||
background: #000;
|
||||
}
|
||||
|
||||
div.effect {
|
||||
width: 120px;
|
||||
height: 100px;
|
||||
background: #333;
|
||||
border: 5px outset #aaa;
|
||||
float: left;
|
||||
margin-top: 20px;
|
||||
margin-left: 20px;
|
||||
cursor: pointer;
|
||||
cursor: hand;
|
||||
}
|
||||
|
||||
div.current {
|
||||
border: 5px outset #FF0000;
|
||||
background: #660000;
|
||||
}
|
||||
|
||||
div.effect p {
|
||||
color: #eee;
|
||||
margin: 0px;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.ui-effects-transfer {
|
||||
border: 1px dotted #fff;
|
||||
background: #666;
|
||||
opacity: 0.5;
|
||||
body,html {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-size: 12px;
|
||||
font-family: Arial;
|
||||
background: #000;
|
||||
}
|
||||
|
||||
div.effect {
|
||||
width: 120px;
|
||||
height: 100px;
|
||||
background: #333;
|
||||
border: 5px outset #aaa;
|
||||
float: left;
|
||||
margin-top: 20px;
|
||||
margin-left: 20px;
|
||||
cursor: pointer;
|
||||
cursor: hand;
|
||||
}
|
||||
|
||||
div.current {
|
||||
border: 5px outset #FF0000;
|
||||
background: #660000;
|
||||
}
|
||||
|
||||
div.effect p {
|
||||
color: #eee;
|
||||
margin: 0px;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.ui-effects-transfer {
|
||||
border: 1px dotted #fff;
|
||||
background: #666;
|
||||
opacity: 0.5;
|
||||
}
|
||||
@@ -1,231 +1,231 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Language" content="en" />
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Image Cropper: jQuery Real-world Demo</title>
|
||||
<script type="text/javascript" src="../../../../jquery/jquery-1.2.6.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.resizable.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.draggable.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../../../source/effects.core.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.bounce.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.scale.js"></script>
|
||||
|
||||
|
||||
<style type="text/css">
|
||||
<!--
|
||||
/*************************************/
|
||||
/* Real-World CSS */
|
||||
|
||||
@import "real-world.css";
|
||||
|
||||
/*************************************/
|
||||
/* Demo CSS */
|
||||
|
||||
#sidebar div {
|
||||
text-align:center;
|
||||
}
|
||||
.thumb ul {
|
||||
padding:10px 0 0 0;
|
||||
}
|
||||
.thumbs li {
|
||||
margin:4px 20px;
|
||||
}
|
||||
.thumbs li a,
|
||||
.thumbs li a img{
|
||||
height: 75px;
|
||||
width: 75px;
|
||||
display: block;
|
||||
}
|
||||
.thumbs li a:hover,
|
||||
.thumbs li a:hover img{
|
||||
height: 130px;
|
||||
width: 130px;
|
||||
}
|
||||
.thumbs li a:hover {
|
||||
border: 4px solid #E8EEF7;
|
||||
}
|
||||
|
||||
#break strong {
|
||||
margin:0 0 4px 0;
|
||||
}
|
||||
#break ul {
|
||||
padding:6px;
|
||||
}
|
||||
#break ul li {
|
||||
padding:3px 0px;
|
||||
font-style: italic;
|
||||
}
|
||||
#break ul li span {
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
.ui-resizable-knob {
|
||||
border: 1px #fff dashed;
|
||||
}
|
||||
|
||||
/*************************************/
|
||||
/* Cropper CSS */
|
||||
|
||||
#resizeme_containment_wrap_image {
|
||||
position: relative;
|
||||
}
|
||||
#resizeme_containment_div {
|
||||
position: absolute;
|
||||
top:0px;
|
||||
left:0px;
|
||||
width: 150px;
|
||||
height:150px;
|
||||
}
|
||||
|
||||
#resizeme_containment_div_wrapper {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
|
||||
-->
|
||||
</style>
|
||||
<script type="text/javascript">
|
||||
var getSizeImg = function(src) {
|
||||
var timg = $('<img>').attr('src', src).css({ position: 'absolute', top: '-1000px', left: '-1000px' }).appendTo('body');
|
||||
var size = [ timg.get(0).offsetWidth, timg.get(0).offsetHeight ];
|
||||
|
||||
try { document.body.removeChild(timg[0]); }
|
||||
catch(e) {};
|
||||
|
||||
return size;
|
||||
};
|
||||
|
||||
$().ready(function(){
|
||||
|
||||
$('#resizeme_containment_div').resizable({
|
||||
|
||||
containment: $('#resizeme_containment_div_wrapper'),
|
||||
|
||||
//proxy: 'proxy',
|
||||
|
||||
//ghost: true,
|
||||
|
||||
//animate:true,
|
||||
|
||||
handles: 'all',
|
||||
|
||||
knobHandles: true,
|
||||
|
||||
//transparent: true,
|
||||
|
||||
//aspectRatio: true,
|
||||
|
||||
autoHide: true,
|
||||
|
||||
minWidth: 100,
|
||||
|
||||
minHeight: 100,
|
||||
|
||||
resize: function(e, ui) {
|
||||
var self = $(this).data("resizable");
|
||||
|
||||
this.style.backgroundPosition = '-' + (self.position.left) + 'px -' + (self.position.top) + 'px';
|
||||
|
||||
|
||||
$("#log-top").html(self.position.top+"px");
|
||||
|
||||
$("#log-left").html(self.position.left+"px");
|
||||
|
||||
$("#log-height").html(self.size.height+"px");
|
||||
|
||||
$("#log-width").html(self.size.width+"px");
|
||||
|
||||
},
|
||||
stop: function(e, ui) {
|
||||
var self = $(this).data("resizable");
|
||||
this.style.backgroundPosition = '-' + (self.position.left) + 'px -' + (self.position.top) + 'px';
|
||||
}
|
||||
})
|
||||
|
||||
.draggable({
|
||||
|
||||
cursor: 'move',
|
||||
|
||||
containment: $('#resizeme_containment_div_wrapper'),
|
||||
|
||||
drag: function(e, ui) {
|
||||
var self = $(this).data("draggable");
|
||||
this.style.backgroundPosition = '-' + (self.position.left) + 'px -' + (self.position.top) + 'px';
|
||||
|
||||
$("#log-top").html(self.position.top+"px");
|
||||
|
||||
$("#log-left").html(self.position.left+"px");
|
||||
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
$('.thumbs').find("li a").click(function(e){
|
||||
|
||||
$('#resizeme_containment_div').css('top', '0');
|
||||
|
||||
$('#resizeme_containment_div').css('left', '0');
|
||||
|
||||
var size = getSizeImg($(this).find("img").attr("src"));
|
||||
|
||||
$('#resizeme_containment_wrap_image').css( { width: size[0], height: size[1], background: 'transparent url('+$(this).find("img").attr("src")+') no-repeat scroll 0%' } );
|
||||
$('#resizeme_containment_div_wrapper').css( { width: size[0], height: size[1] } );
|
||||
$('#resizeme_containment_div').css('background', 'transparent url('+$(this).find("img").attr("src")+') no-repeat scroll 0px 0px');
|
||||
|
||||
return false;
|
||||
|
||||
});
|
||||
|
||||
|
||||
$('#resizeme_containment_wrap_image').css({ opacity: 0.5 });
|
||||
|
||||
$("#log-height").html($('#resizeme_containment_div').height()+"px");
|
||||
|
||||
$("#log-width").html($('#resizeme_containment_div').width()+"px");
|
||||
|
||||
});
|
||||
|
||||
$(window).load(function(){
|
||||
var size = getSizeImg("img/img01.jpg");
|
||||
$('#resizeme_containment_div').css('background', 'transparent url(img/img01.jpg) no-repeat scroll 0px 0px');
|
||||
$('#resizeme_containment_div_wrapper').css( { width: size[0], height: size[1] } );
|
||||
$('#resizeme_containment_wrap_image').css( { width: size[0], height: size[1], background: 'transparent url(img/img01.jpg) no-repeat scroll 0%' } );
|
||||
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="sidebar">
|
||||
<ul class="thumbs">
|
||||
<li><a href="#" title="Open This Image"><img src="img/img01.jpg"/></a></li>
|
||||
<li><a href="#" title="Open This Image"><img src="img/img02.jpg"/></a></li>
|
||||
<li><a href="#" title="Open This Image"><img src="img/img03.jpg"/></a></li>
|
||||
<li><a href="#" title="Open This Image"><img src="img/img04.jpg"/></a></li>
|
||||
<li><a href="#" title="Open This Image"><img src="img/img05.jpg"/></a></li>
|
||||
</div>
|
||||
</div>
|
||||
<div id="main">
|
||||
<div id="header">
|
||||
<h2>jQuery Real-world Demo: Image Cropper</h2>
|
||||
</div>
|
||||
<div id="content">
|
||||
<div id="resizeme_containment_div_wrapper">
|
||||
<div id="resizeme_containment_wrap_image"></div>
|
||||
<div id="resizeme_containment_div"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="break">
|
||||
<strong>Properties:</strong>
|
||||
<ul>
|
||||
<li>width: <span id="log-width">0px</span></li>
|
||||
<li>height: <span id="log-height">0px</span></li>
|
||||
<li>top: <span id="log-top">0px</span></li>
|
||||
<li>left: <span id="log-left">0px</span></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Language" content="en" />
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Image Cropper: jQuery Real-world Demo</title>
|
||||
<script type="text/javascript" src="../../../../jquery/jquery-1.2.6.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.resizable.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.draggable.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../../../source/effects.core.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.bounce.js"></script>
|
||||
<script type="text/javascript" src="../../../source/effects.scale.js"></script>
|
||||
|
||||
|
||||
<style type="text/css">
|
||||
<!--
|
||||
/*************************************/
|
||||
/* Real-World CSS */
|
||||
|
||||
@import "real-world.css";
|
||||
|
||||
/*************************************/
|
||||
/* Demo CSS */
|
||||
|
||||
#sidebar div {
|
||||
text-align:center;
|
||||
}
|
||||
.thumb ul {
|
||||
padding:10px 0 0 0;
|
||||
}
|
||||
.thumbs li {
|
||||
margin:4px 20px;
|
||||
}
|
||||
.thumbs li a,
|
||||
.thumbs li a img{
|
||||
height: 75px;
|
||||
width: 75px;
|
||||
display: block;
|
||||
}
|
||||
.thumbs li a:hover,
|
||||
.thumbs li a:hover img{
|
||||
height: 130px;
|
||||
width: 130px;
|
||||
}
|
||||
.thumbs li a:hover {
|
||||
border: 4px solid #E8EEF7;
|
||||
}
|
||||
|
||||
#break strong {
|
||||
margin:0 0 4px 0;
|
||||
}
|
||||
#break ul {
|
||||
padding:6px;
|
||||
}
|
||||
#break ul li {
|
||||
padding:3px 0px;
|
||||
font-style: italic;
|
||||
}
|
||||
#break ul li span {
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
.ui-resizable-knob {
|
||||
border: 1px #fff dashed;
|
||||
}
|
||||
|
||||
/*************************************/
|
||||
/* Cropper CSS */
|
||||
|
||||
#resizeme_containment_wrap_image {
|
||||
position: relative;
|
||||
}
|
||||
#resizeme_containment_div {
|
||||
position: absolute;
|
||||
top:0px;
|
||||
left:0px;
|
||||
width: 150px;
|
||||
height:150px;
|
||||
}
|
||||
|
||||
#resizeme_containment_div_wrapper {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
|
||||
-->
|
||||
</style>
|
||||
<script type="text/javascript">
|
||||
var getSizeImg = function(src) {
|
||||
var timg = $('<img>').attr('src', src).css({ position: 'absolute', top: '-1000px', left: '-1000px' }).appendTo('body');
|
||||
var size = [ timg.get(0).offsetWidth, timg.get(0).offsetHeight ];
|
||||
|
||||
try { document.body.removeChild(timg[0]); }
|
||||
catch(e) {};
|
||||
|
||||
return size;
|
||||
};
|
||||
|
||||
$().ready(function(){
|
||||
|
||||
$('#resizeme_containment_div').resizable({
|
||||
|
||||
containment: $('#resizeme_containment_div_wrapper'),
|
||||
|
||||
//proxy: 'proxy',
|
||||
|
||||
//ghost: true,
|
||||
|
||||
//animate:true,
|
||||
|
||||
handles: 'all',
|
||||
|
||||
knobHandles: true,
|
||||
|
||||
//transparent: true,
|
||||
|
||||
//aspectRatio: true,
|
||||
|
||||
autoHide: true,
|
||||
|
||||
minWidth: 100,
|
||||
|
||||
minHeight: 100,
|
||||
|
||||
resize: function(e, ui) {
|
||||
var self = $(this).data("resizable");
|
||||
|
||||
this.style.backgroundPosition = '-' + (self.position.left) + 'px -' + (self.position.top) + 'px';
|
||||
|
||||
|
||||
$("#log-top").html(self.position.top+"px");
|
||||
|
||||
$("#log-left").html(self.position.left+"px");
|
||||
|
||||
$("#log-height").html(self.size.height+"px");
|
||||
|
||||
$("#log-width").html(self.size.width+"px");
|
||||
|
||||
},
|
||||
stop: function(e, ui) {
|
||||
var self = $(this).data("resizable");
|
||||
this.style.backgroundPosition = '-' + (self.position.left) + 'px -' + (self.position.top) + 'px';
|
||||
}
|
||||
})
|
||||
|
||||
.draggable({
|
||||
|
||||
cursor: 'move',
|
||||
|
||||
containment: $('#resizeme_containment_div_wrapper'),
|
||||
|
||||
drag: function(e, ui) {
|
||||
var self = $(this).data("draggable");
|
||||
this.style.backgroundPosition = '-' + (self.position.left) + 'px -' + (self.position.top) + 'px';
|
||||
|
||||
$("#log-top").html(self.position.top+"px");
|
||||
|
||||
$("#log-left").html(self.position.left+"px");
|
||||
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
$('.thumbs').find("li a").click(function(e){
|
||||
|
||||
$('#resizeme_containment_div').css('top', '0');
|
||||
|
||||
$('#resizeme_containment_div').css('left', '0');
|
||||
|
||||
var size = getSizeImg($(this).find("img").attr("src"));
|
||||
|
||||
$('#resizeme_containment_wrap_image').css( { width: size[0], height: size[1], background: 'transparent url('+$(this).find("img").attr("src")+') no-repeat scroll 0%' } );
|
||||
$('#resizeme_containment_div_wrapper').css( { width: size[0], height: size[1] } );
|
||||
$('#resizeme_containment_div').css('background', 'transparent url('+$(this).find("img").attr("src")+') no-repeat scroll 0px 0px');
|
||||
|
||||
return false;
|
||||
|
||||
});
|
||||
|
||||
|
||||
$('#resizeme_containment_wrap_image').css({ opacity: 0.5 });
|
||||
|
||||
$("#log-height").html($('#resizeme_containment_div').height()+"px");
|
||||
|
||||
$("#log-width").html($('#resizeme_containment_div').width()+"px");
|
||||
|
||||
});
|
||||
|
||||
$(window).load(function(){
|
||||
var size = getSizeImg("img/img01.jpg");
|
||||
$('#resizeme_containment_div').css('background', 'transparent url(img/img01.jpg) no-repeat scroll 0px 0px');
|
||||
$('#resizeme_containment_div_wrapper').css( { width: size[0], height: size[1] } );
|
||||
$('#resizeme_containment_wrap_image').css( { width: size[0], height: size[1], background: 'transparent url(img/img01.jpg) no-repeat scroll 0%' } );
|
||||
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="sidebar">
|
||||
<ul class="thumbs">
|
||||
<li><a href="#" title="Open This Image"><img src="img/img01.jpg"/></a></li>
|
||||
<li><a href="#" title="Open This Image"><img src="img/img02.jpg"/></a></li>
|
||||
<li><a href="#" title="Open This Image"><img src="img/img03.jpg"/></a></li>
|
||||
<li><a href="#" title="Open This Image"><img src="img/img04.jpg"/></a></li>
|
||||
<li><a href="#" title="Open This Image"><img src="img/img05.jpg"/></a></li>
|
||||
</div>
|
||||
</div>
|
||||
<div id="main">
|
||||
<div id="header">
|
||||
<h2>jQuery Real-world Demo: Image Cropper</h2>
|
||||
</div>
|
||||
<div id="content">
|
||||
<div id="resizeme_containment_div_wrapper">
|
||||
<div id="resizeme_containment_wrap_image"></div>
|
||||
<div id="resizeme_containment_div"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="break">
|
||||
<strong>Properties:</strong>
|
||||
<ul>
|
||||
<li>width: <span id="log-width">0px</span></li>
|
||||
<li>height: <span id="log-height">0px</span></li>
|
||||
<li>top: <span id="log-top">0px</span></li>
|
||||
<li>left: <span id="log-left">0px</span></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -1,104 +1,104 @@
|
||||
/*************************************/
|
||||
/* Blueprint: reset.css */
|
||||
|
||||
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,
|
||||
dl, dt, dd, ol, ul, li,
|
||||
fieldset, form, label, legend,
|
||||
table, caption, tbody, tfoot, thead, tr, th, td {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: 0;
|
||||
outline: 0;
|
||||
font-size: 100%;
|
||||
font-family: inherit;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
/* Remember to define focus styles! */
|
||||
:focus {
|
||||
outline: 0;
|
||||
}
|
||||
body {
|
||||
line-height: 1;
|
||||
color: black;
|
||||
background: white;
|
||||
}
|
||||
ol, ul {
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
/* Tables still need 'cellspacing="0"' in the markup. */
|
||||
table {
|
||||
border-collapse: separate;
|
||||
border-spacing: 0;
|
||||
}
|
||||
caption, th, td {
|
||||
text-align: left;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
/* Remove possible quote marks (") from <q>, <blockquote>. */
|
||||
blockquote:before, blockquote:after,
|
||||
q:before, q:after {
|
||||
content: "";
|
||||
}
|
||||
blockquote, q {
|
||||
quotes: "" "";
|
||||
}
|
||||
|
||||
.clear {
|
||||
clear:both;
|
||||
}
|
||||
|
||||
/*************************************/
|
||||
/* Layout */
|
||||
body, html {
|
||||
height: 100%;
|
||||
font-family:sans-serif;
|
||||
font-size:13px;
|
||||
margin:0px;
|
||||
padding:0px;
|
||||
}
|
||||
body, html {
|
||||
height: 100%;
|
||||
font-family:sans-serif;
|
||||
font-size:13px;
|
||||
|
||||
}
|
||||
#main {
|
||||
height:auto;
|
||||
background: #E8EEF7;
|
||||
border-left:1px solid #ccc;
|
||||
border-bottom:1px solid #ccc;
|
||||
margin:0 0 0 200px;
|
||||
}
|
||||
#header {
|
||||
height:30px;
|
||||
padding:10px;
|
||||
font-size:2em;
|
||||
font-weight:bold;
|
||||
text-align: center;
|
||||
border-bottom:1px solid #ccc;
|
||||
background: #E8EEF7;
|
||||
}
|
||||
#main #content {
|
||||
padding:10px;
|
||||
background: #FFF;
|
||||
}
|
||||
#main #break {
|
||||
padding:10px;
|
||||
border-top:1px solid #ccc;
|
||||
}
|
||||
#sidebar {
|
||||
float:left;
|
||||
width:200px;
|
||||
height:100%;
|
||||
border-right:1px solid #ccc;
|
||||
}
|
||||
#sidebar div {
|
||||
padding:10px;
|
||||
}
|
||||
/*************************************/
|
||||
/* Blueprint: reset.css */
|
||||
|
||||
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,
|
||||
dl, dt, dd, ol, ul, li,
|
||||
fieldset, form, label, legend,
|
||||
table, caption, tbody, tfoot, thead, tr, th, td {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: 0;
|
||||
outline: 0;
|
||||
font-size: 100%;
|
||||
font-family: inherit;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
/* Remember to define focus styles! */
|
||||
:focus {
|
||||
outline: 0;
|
||||
}
|
||||
body {
|
||||
line-height: 1;
|
||||
color: black;
|
||||
background: white;
|
||||
}
|
||||
ol, ul {
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
/* Tables still need 'cellspacing="0"' in the markup. */
|
||||
table {
|
||||
border-collapse: separate;
|
||||
border-spacing: 0;
|
||||
}
|
||||
caption, th, td {
|
||||
text-align: left;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
/* Remove possible quote marks (") from <q>, <blockquote>. */
|
||||
blockquote:before, blockquote:after,
|
||||
q:before, q:after {
|
||||
content: "";
|
||||
}
|
||||
blockquote, q {
|
||||
quotes: "" "";
|
||||
}
|
||||
|
||||
.clear {
|
||||
clear:both;
|
||||
}
|
||||
|
||||
/*************************************/
|
||||
/* Layout */
|
||||
body, html {
|
||||
height: 100%;
|
||||
font-family:sans-serif;
|
||||
font-size:13px;
|
||||
margin:0px;
|
||||
padding:0px;
|
||||
}
|
||||
body, html {
|
||||
height: 100%;
|
||||
font-family:sans-serif;
|
||||
font-size:13px;
|
||||
|
||||
}
|
||||
#main {
|
||||
height:auto;
|
||||
background: #E8EEF7;
|
||||
border-left:1px solid #ccc;
|
||||
border-bottom:1px solid #ccc;
|
||||
margin:0 0 0 200px;
|
||||
}
|
||||
#header {
|
||||
height:30px;
|
||||
padding:10px;
|
||||
font-size:2em;
|
||||
font-weight:bold;
|
||||
text-align: center;
|
||||
border-bottom:1px solid #ccc;
|
||||
background: #E8EEF7;
|
||||
}
|
||||
#main #content {
|
||||
padding:10px;
|
||||
background: #FFF;
|
||||
}
|
||||
#main #break {
|
||||
padding:10px;
|
||||
border-top:1px solid #ccc;
|
||||
}
|
||||
#sidebar {
|
||||
float:left;
|
||||
width:200px;
|
||||
height:100%;
|
||||
border-right:1px solid #ccc;
|
||||
}
|
||||
#sidebar div {
|
||||
padding:10px;
|
||||
}
|
||||
|
||||
@@ -1,42 +1,42 @@
|
||||
body { background-color:#666; color:#FFF; font:11px/1.5 Arial, sans-serif; margin:0; overflow:hidden; padding:30px 0 0 30px; }
|
||||
h1 { font-size:18px; margin:0 0 20px; }
|
||||
a { color:#FFF; }
|
||||
|
||||
.clear { clear:both; font-size:1px; line-height:1px; }
|
||||
|
||||
#overlay { background:#666; height:100%; left:0; position:absolute; top:0; width:100%; z-index:2000; }
|
||||
#overlay #preloader { background:url(loader_bg.gif) no-repeat; height:50px; left:50%; line-height:50px; margin:-25px 0 0 -25px; position:absolute; text-align:center; top:50%; width:50px; }
|
||||
#overlay #preloader img { margin:11px 0 0 0; vertical-align:middle; }
|
||||
|
||||
.ui-sortable { background-color:#FFF; border:1px solid #555; color:#222; margin:0 15px 15px 0; padding:0 10px 10px; width:175px; }
|
||||
.ui-sortable h2 { background-color:#555; border-top:3px solid #666; color:#FFF; font-size:11px; margin:0 -10px 10px; line-height:2; padding:0 10px; }
|
||||
|
||||
dl.sort { color:#222; margin:10px 0; }
|
||||
#uidemo dl.first { margin-top:0; }
|
||||
#uidemo dl.last { margin-bottom:0; }
|
||||
|
||||
dl.sort dt { background-color:#666; color:#FFF; cursor:move; height:2em; line-height:2; padding:0 6px; position:relative; }
|
||||
dl.sort dd { background-color:#FFF; margin:0; padding:3px 6px; }
|
||||
|
||||
.ui-sortable-helper { width:175px; }
|
||||
.placeholder { border:1px dashed #AAA; }
|
||||
|
||||
span.options { cursor:default; font-size:1px; line-height:1px; position:absolute; }
|
||||
span.options a { background-color:#FFF; cursor:pointer; display:block; float:left; text-indent:-9000px; }
|
||||
|
||||
.ui-sortable h2 span.options { right:10px; top:8px; width:30px; }
|
||||
.ui-sortable h2 span.options a { height:12px; width:30px; }
|
||||
|
||||
dl.sort dt span.options { right:5px; top:5px; width:27px; }
|
||||
dl.sort dt span.options a { height:12px; width:12px; }
|
||||
dl.sort dt span.options a.up { margin-right:3px; }
|
||||
dl.sort dt span.options a.disabled { background-color:#555; cursor:default; }
|
||||
|
||||
#container { float:left; }
|
||||
#header { width:638px; }
|
||||
#content { float:left; width:400px; }
|
||||
#sidebar { float:left; width:200px; }
|
||||
#footer { width:638px; }
|
||||
#trashcan { float:left; }
|
||||
|
||||
body { background-color:#666; color:#FFF; font:11px/1.5 Arial, sans-serif; margin:0; overflow:hidden; padding:30px 0 0 30px; }
|
||||
h1 { font-size:18px; margin:0 0 20px; }
|
||||
a { color:#FFF; }
|
||||
|
||||
.clear { clear:both; font-size:1px; line-height:1px; }
|
||||
|
||||
#overlay { background:#666; height:100%; left:0; position:absolute; top:0; width:100%; z-index:2000; }
|
||||
#overlay #preloader { background:url(loader_bg.gif) no-repeat; height:50px; left:50%; line-height:50px; margin:-25px 0 0 -25px; position:absolute; text-align:center; top:50%; width:50px; }
|
||||
#overlay #preloader img { margin:11px 0 0 0; vertical-align:middle; }
|
||||
|
||||
.ui-sortable { background-color:#FFF; border:1px solid #555; color:#222; margin:0 15px 15px 0; padding:0 10px 10px; width:175px; }
|
||||
.ui-sortable h2 { background-color:#555; border-top:3px solid #666; color:#FFF; font-size:11px; margin:0 -10px 10px; line-height:2; padding:0 10px; }
|
||||
|
||||
dl.sort { color:#222; margin:10px 0; }
|
||||
#uidemo dl.first { margin-top:0; }
|
||||
#uidemo dl.last { margin-bottom:0; }
|
||||
|
||||
dl.sort dt { background-color:#666; color:#FFF; cursor:move; height:2em; line-height:2; padding:0 6px; position:relative; }
|
||||
dl.sort dd { background-color:#FFF; margin:0; padding:3px 6px; }
|
||||
|
||||
.ui-sortable-helper { width:175px; }
|
||||
.placeholder { border:1px dashed #AAA; }
|
||||
|
||||
span.options { cursor:default; font-size:1px; line-height:1px; position:absolute; }
|
||||
span.options a { background-color:#FFF; cursor:pointer; display:block; float:left; text-indent:-9000px; }
|
||||
|
||||
.ui-sortable h2 span.options { right:10px; top:8px; width:30px; }
|
||||
.ui-sortable h2 span.options a { height:12px; width:30px; }
|
||||
|
||||
dl.sort dt span.options { right:5px; top:5px; width:27px; }
|
||||
dl.sort dt span.options a { height:12px; width:12px; }
|
||||
dl.sort dt span.options a.up { margin-right:3px; }
|
||||
dl.sort dt span.options a.disabled { background-color:#555; cursor:default; }
|
||||
|
||||
#container { float:left; }
|
||||
#header { width:638px; }
|
||||
#content { float:left; width:400px; }
|
||||
#sidebar { float:left; width:200px; }
|
||||
#footer { width:638px; }
|
||||
#trashcan { float:left; }
|
||||
|
||||
#trashcan p { margin:0; }
|
||||
@@ -1,97 +1,97 @@
|
||||
(function($){
|
||||
var updateUpDown = function(sortable){
|
||||
$('dl:not(.ui-sortable-helper)', sortable)
|
||||
.removeClass('first').removeClass('last')
|
||||
.find('.up, .down').removeClass('disabled').end()
|
||||
.filter(':first').addClass('first').find('.up').addClass('disabled').end().end()
|
||||
.filter(':last').addClass('last').find('.down').addClass('disabled').end().end();
|
||||
};
|
||||
|
||||
var moveUpDown = function(){
|
||||
var link = $(this),
|
||||
dl = link.parents('dl'),
|
||||
prev = dl.prev('dl'),
|
||||
next = dl.next('dl');
|
||||
|
||||
if(link.is('.up') && prev.length > 0)
|
||||
dl.insertBefore(prev);
|
||||
|
||||
if(link.is('.down') && next.length > 0)
|
||||
dl.insertAfter(next);
|
||||
|
||||
updateUpDown(dl.parent());
|
||||
};
|
||||
|
||||
var addItem = function(){
|
||||
var sortable = $(this).parents('.ui-sortable');
|
||||
var options = '<span class="options"><a class="up">up</a><a class="down">down</a></span>';
|
||||
var tpl = '<dl class="sort"><dt>{name}' + options + '</dt><dd>{desc}</dd></dl>';
|
||||
var html = tpl.replace(/{name}/g, 'Dynamic name :D').replace(/{desc}/g, 'Description');
|
||||
|
||||
sortable.append(html).sortable('refresh').find('a.up, a.down').bind('click', moveUpDown);
|
||||
updateUpDown(sortable);
|
||||
};
|
||||
|
||||
var emptyTrashCan = function(item){
|
||||
item.remove();
|
||||
};
|
||||
|
||||
var sortableChange = function(e, ui){
|
||||
if(ui.sender){
|
||||
var w = ui.element.width();
|
||||
ui.placeholder.width(w);
|
||||
ui.helper.css("width",ui.element.children().width());
|
||||
}
|
||||
};
|
||||
|
||||
var sortableUpdate = function(e, ui){
|
||||
if(ui.element[0].id == 'trashcan'){
|
||||
emptyTrashCan(ui.item);
|
||||
} else {
|
||||
updateUpDown(ui.element[0]);
|
||||
if(ui.sender)
|
||||
updateUpDown(ui.sender[0]);
|
||||
}
|
||||
};
|
||||
|
||||
$(document).ready(function(){
|
||||
var els = ['#header', '#content', '#sidebar', '#footer', '#trashcan'];
|
||||
var $els = $(els.toString());
|
||||
|
||||
$('h2', $els.slice(0,-1)).append('<span class="options"><a class="add">add</a></span>');
|
||||
$('dt', $els).append('<span class="options"><a class="up">up</a><a class="down">down</a></span>');
|
||||
|
||||
$('a.add').bind('click', addItem);
|
||||
$('a.up, a.down').bind('click', moveUpDown);
|
||||
|
||||
$els.each(function(){
|
||||
updateUpDown(this);
|
||||
});
|
||||
|
||||
$els.sortable({
|
||||
items: '> dl',
|
||||
handle: 'dt',
|
||||
cursor: 'move',
|
||||
//cursorAt: { top: 2, left: 2 },
|
||||
//opacity: 0.8,
|
||||
//helper: 'clone',
|
||||
appendTo: 'body',
|
||||
//placeholder: 'clone',
|
||||
//placeholder: 'placeholder',
|
||||
connectWith: els,
|
||||
start: function(e,ui) {
|
||||
ui.helper.css("width", ui.item.width());
|
||||
},
|
||||
change: sortableChange,
|
||||
update: sortableUpdate
|
||||
});
|
||||
});
|
||||
|
||||
$(window).bind('load',function(){
|
||||
setTimeout(function(){
|
||||
$('#overlay').fadeOut(function(){
|
||||
$('body').css('overflow', 'auto');
|
||||
});
|
||||
}, 750);
|
||||
});
|
||||
(function($){
|
||||
var updateUpDown = function(sortable){
|
||||
$('dl:not(.ui-sortable-helper)', sortable)
|
||||
.removeClass('first').removeClass('last')
|
||||
.find('.up, .down').removeClass('disabled').end()
|
||||
.filter(':first').addClass('first').find('.up').addClass('disabled').end().end()
|
||||
.filter(':last').addClass('last').find('.down').addClass('disabled').end().end();
|
||||
};
|
||||
|
||||
var moveUpDown = function(){
|
||||
var link = $(this),
|
||||
dl = link.parents('dl'),
|
||||
prev = dl.prev('dl'),
|
||||
next = dl.next('dl');
|
||||
|
||||
if(link.is('.up') && prev.length > 0)
|
||||
dl.insertBefore(prev);
|
||||
|
||||
if(link.is('.down') && next.length > 0)
|
||||
dl.insertAfter(next);
|
||||
|
||||
updateUpDown(dl.parent());
|
||||
};
|
||||
|
||||
var addItem = function(){
|
||||
var sortable = $(this).parents('.ui-sortable');
|
||||
var options = '<span class="options"><a class="up">up</a><a class="down">down</a></span>';
|
||||
var tpl = '<dl class="sort"><dt>{name}' + options + '</dt><dd>{desc}</dd></dl>';
|
||||
var html = tpl.replace(/{name}/g, 'Dynamic name :D').replace(/{desc}/g, 'Description');
|
||||
|
||||
sortable.append(html).sortable('refresh').find('a.up, a.down').bind('click', moveUpDown);
|
||||
updateUpDown(sortable);
|
||||
};
|
||||
|
||||
var emptyTrashCan = function(item){
|
||||
item.remove();
|
||||
};
|
||||
|
||||
var sortableChange = function(e, ui){
|
||||
if(ui.sender){
|
||||
var w = ui.element.width();
|
||||
ui.placeholder.width(w);
|
||||
ui.helper.css("width",ui.element.children().width());
|
||||
}
|
||||
};
|
||||
|
||||
var sortableUpdate = function(e, ui){
|
||||
if(ui.element[0].id == 'trashcan'){
|
||||
emptyTrashCan(ui.item);
|
||||
} else {
|
||||
updateUpDown(ui.element[0]);
|
||||
if(ui.sender)
|
||||
updateUpDown(ui.sender[0]);
|
||||
}
|
||||
};
|
||||
|
||||
$(document).ready(function(){
|
||||
var els = ['#header', '#content', '#sidebar', '#footer', '#trashcan'];
|
||||
var $els = $(els.toString());
|
||||
|
||||
$('h2', $els.slice(0,-1)).append('<span class="options"><a class="add">add</a></span>');
|
||||
$('dt', $els).append('<span class="options"><a class="up">up</a><a class="down">down</a></span>');
|
||||
|
||||
$('a.add').bind('click', addItem);
|
||||
$('a.up, a.down').bind('click', moveUpDown);
|
||||
|
||||
$els.each(function(){
|
||||
updateUpDown(this);
|
||||
});
|
||||
|
||||
$els.sortable({
|
||||
items: '> dl',
|
||||
handle: 'dt',
|
||||
cursor: 'move',
|
||||
//cursorAt: { top: 2, left: 2 },
|
||||
//opacity: 0.8,
|
||||
//helper: 'clone',
|
||||
appendTo: 'body',
|
||||
//placeholder: 'clone',
|
||||
//placeholder: 'placeholder',
|
||||
connectWith: els,
|
||||
start: function(e,ui) {
|
||||
ui.helper.css("width", ui.item.width());
|
||||
},
|
||||
change: sortableChange,
|
||||
update: sortableUpdate
|
||||
});
|
||||
});
|
||||
|
||||
$(window).bind('load',function(){
|
||||
setTimeout(function(){
|
||||
$('#overlay').fadeOut(function(){
|
||||
$('body').css('overflow', 'auto');
|
||||
});
|
||||
}, 750);
|
||||
});
|
||||
})(jQuery);
|
||||
@@ -1,94 +1,94 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>UI Sortable: Layout Demo</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
||||
|
||||
<meta name="title" content="UI Sortable: Layout Demo" />
|
||||
<meta name="description" content="A sortable layout created with the jQuery UI suite" />
|
||||
|
||||
<meta name="author" content="Joan Piedra" />
|
||||
<meta name="author-url" content="http://www.joanpiedra.com/" />
|
||||
<meta name="author-url" content="http://www.justaquit.com/" />
|
||||
<meta name="author-url" content="http://jquery.com/" />
|
||||
|
||||
<link rel="shortcut icon" href="http://jquery.com/favicon.ico" />
|
||||
<link rel="icon" href="http://jquery.com/favicon.ico" type="image/x-icon" />
|
||||
|
||||
<link rel="stylesheet" href="demo.css" type="text/css" media="screen" />
|
||||
<!-- saved from url=(0013)about:internet -->
|
||||
</head>
|
||||
|
||||
<body id="uidemo">
|
||||
<h1>UI Sortable: <em>Layout demo</em></h1>
|
||||
|
||||
<div id="container">
|
||||
<div id="header" class="ui-sortable">
|
||||
<h2>Header</h2>
|
||||
<dl class="sort">
|
||||
<dt>Pages</dt>
|
||||
<dd>Main Navigation</dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
<div id="content" class="ui-sortable">
|
||||
<h2>Content</h2>
|
||||
<dl class="sort">
|
||||
<dt>Blog</dt>
|
||||
<dd>Main blog post</dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
<div id="sidebar" class="ui-sortable">
|
||||
<h2>Sidebar</h2>
|
||||
<dl class="sort">
|
||||
<dt>Pages</dt>
|
||||
<dd>Mini About</dd>
|
||||
</dl>
|
||||
<dl class="sort">
|
||||
<dt>Blog</dt>
|
||||
<dd>Monthly Archives</dd>
|
||||
</dl>
|
||||
<dl class="sort">
|
||||
<dt>Links</dt>
|
||||
<dd>Random Links</dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
<div class="clear"></div>
|
||||
|
||||
<div id="footer" class="ui-sortable">
|
||||
<h2>Footer</h2>
|
||||
<dl class="sort">
|
||||
<dt>Pages</dt>
|
||||
<dd>Copyright</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="trashcan" class="ui-sortable">
|
||||
<h2>Trash can</h2>
|
||||
<p>Drag modules here to delete them.</p>
|
||||
</div>
|
||||
|
||||
<div class="clear"></div>
|
||||
<div id="overlay">
|
||||
<div id="preloader"><img src="loader.gif" alt="" /></div>
|
||||
</div>
|
||||
|
||||
<!-- jQuery Core -->
|
||||
<script type="text/javascript" src="../../../../jquery/jquery-1.2.6.js"></script>
|
||||
|
||||
<!-- jQuery UI Base -->
|
||||
<script type="text/javascript" src="../../../source/ui.core.js"></script>
|
||||
|
||||
<!-- jQuery UI Plugins -->
|
||||
<script type="text/javascript" src="../../../source/ui.draggable.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.droppable.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.sortable.js"></script>
|
||||
|
||||
|
||||
<!-- jQuery UI Demo -->
|
||||
<script type="text/javascript" src="demo.js"></script>
|
||||
</body>
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>UI Sortable: Layout Demo</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
||||
|
||||
<meta name="title" content="UI Sortable: Layout Demo" />
|
||||
<meta name="description" content="A sortable layout created with the jQuery UI suite" />
|
||||
|
||||
<meta name="author" content="Joan Piedra" />
|
||||
<meta name="author-url" content="http://www.joanpiedra.com/" />
|
||||
<meta name="author-url" content="http://www.justaquit.com/" />
|
||||
<meta name="author-url" content="http://jquery.com/" />
|
||||
|
||||
<link rel="shortcut icon" href="http://jquery.com/favicon.ico" />
|
||||
<link rel="icon" href="http://jquery.com/favicon.ico" type="image/x-icon" />
|
||||
|
||||
<link rel="stylesheet" href="demo.css" type="text/css" media="screen" />
|
||||
<!-- saved from url=(0013)about:internet -->
|
||||
</head>
|
||||
|
||||
<body id="uidemo">
|
||||
<h1>UI Sortable: <em>Layout demo</em></h1>
|
||||
|
||||
<div id="container">
|
||||
<div id="header" class="ui-sortable">
|
||||
<h2>Header</h2>
|
||||
<dl class="sort">
|
||||
<dt>Pages</dt>
|
||||
<dd>Main Navigation</dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
<div id="content" class="ui-sortable">
|
||||
<h2>Content</h2>
|
||||
<dl class="sort">
|
||||
<dt>Blog</dt>
|
||||
<dd>Main blog post</dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
<div id="sidebar" class="ui-sortable">
|
||||
<h2>Sidebar</h2>
|
||||
<dl class="sort">
|
||||
<dt>Pages</dt>
|
||||
<dd>Mini About</dd>
|
||||
</dl>
|
||||
<dl class="sort">
|
||||
<dt>Blog</dt>
|
||||
<dd>Monthly Archives</dd>
|
||||
</dl>
|
||||
<dl class="sort">
|
||||
<dt>Links</dt>
|
||||
<dd>Random Links</dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
<div class="clear"></div>
|
||||
|
||||
<div id="footer" class="ui-sortable">
|
||||
<h2>Footer</h2>
|
||||
<dl class="sort">
|
||||
<dt>Pages</dt>
|
||||
<dd>Copyright</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="trashcan" class="ui-sortable">
|
||||
<h2>Trash can</h2>
|
||||
<p>Drag modules here to delete them.</p>
|
||||
</div>
|
||||
|
||||
<div class="clear"></div>
|
||||
<div id="overlay">
|
||||
<div id="preloader"><img src="loader.gif" alt="" /></div>
|
||||
</div>
|
||||
|
||||
<!-- jQuery Core -->
|
||||
<script type="text/javascript" src="../../../../jquery/jquery-1.2.6.js"></script>
|
||||
|
||||
<!-- jQuery UI Base -->
|
||||
<script type="text/javascript" src="../../../source/ui.core.js"></script>
|
||||
|
||||
<!-- jQuery UI Plugins -->
|
||||
<script type="text/javascript" src="../../../source/ui.draggable.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.droppable.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.sortable.js"></script>
|
||||
|
||||
|
||||
<!-- jQuery UI Demo -->
|
||||
<script type="text/javascript" src="demo.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,126 +1,126 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>jQuery UI Draggables and Droppables playground</title>
|
||||
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
||||
<meta http-equiv="content-language" content="en" />
|
||||
|
||||
<meta name="keywords" content="jquery, ui, droppables, draggables, demo" />
|
||||
<meta name="description" content="Demonstration of jQuery UI Droppables and Dragables. More to come." />
|
||||
<script type="text/javascript" src="../../../../jquery/jquery-1.2.6.js"></script>
|
||||
<script type="text/javascript" src="js/jquery.livequery.js"></script>
|
||||
<script type="text/javascript" src="js/jquery.blockUI.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../../../source/ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.draggable.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.droppable.js"></script>
|
||||
|
||||
<script type="text/javascript" src="./js/demo.js"></script>
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="./theme/css/screen.css" media="screen, projection" />
|
||||
</head>
|
||||
<body>
|
||||
<h1>Manage Your Photos</h1>
|
||||
<div id="body_wrap">
|
||||
<div id="content">
|
||||
<h2>Drag photos to the Trash or waste them in the Shredder:</h2>
|
||||
<ul class="gallery">
|
||||
<li>
|
||||
<img src="./img/thumbs/P1010020.JPG" alt="Tatry 1" title="Drag me!" />
|
||||
<p>Tatry 1</p>
|
||||
<div>
|
||||
<a href="#" title="Trash me." class="tb_trash">Trash me</a>
|
||||
<a href="./img/P1010020.JPG" title="See me supersized." class="tb_supersize">See me supersized</a>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<img src="./img/thumbs/P1010036.JPG" alt="Tatry 2" title="Drag me!" />
|
||||
<p>Tatry 2</p>
|
||||
<div>
|
||||
<a href="#" title="Trash me." class="tb_trash">Trash me</a>
|
||||
<a href="./img/P1010036.JPG" title="See me supersized." class="tb_supersize">See me supersized</a>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<img src="./img/thumbs/P1010039.JPG" alt="Tatry 3" title="Drag me!" />
|
||||
<p>Tatry 3</p>
|
||||
<div>
|
||||
<a href="#" title="Trash me." class="tb_trash">Trash me</a>
|
||||
<a href="./img/P1010039.JPG" title="See me supersized." class="tb_supersize">See me supersized</a>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<img src="./img/thumbs/P1010044.JPG" alt="Tatry 4" title="Drag me!" />
|
||||
<p>Tatry 4</p>
|
||||
<div>
|
||||
<a href="#" title="Trash me." class="tb_trash">Trash me</a>
|
||||
<a href="./img/P1010044.JPG" title="See me supersized." class="tb_supersize">See me supersized</a>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<img src="./img/thumbs/P1010050.JPG" alt="Tatry 5" title="Drag me!" />
|
||||
<p>Tatry 5</p>
|
||||
<div>
|
||||
<a href="#" title="Trash me." class="tb_trash">Trash me</a>
|
||||
<a href="./img/P1010050.JPG" title="See me supersized." class="tb_supersize">See me supersized</a>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<img src="./img/thumbs/P1010055.JPG" alt="Tatry 6" title="Drag me!" />
|
||||
<p>Tatry 6</p>
|
||||
<div>
|
||||
<a href="#" title="Trash me." class="tb_trash">Trash me</a>
|
||||
<a href="./img/P1010055.JPG" title="See me supersized." class="tb_supersize">See me supersized</a>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<img src="./img/thumbs/P1010058.JPG" alt="Tatry 7" title="Drag me!" />
|
||||
<p>Tatry 7</p>
|
||||
<div>
|
||||
<a href="#" title="Trash me." class="tb_trash">Trash me</a>
|
||||
<a href="./img/P1010058.JPG" title="See me supersized." class="tb_supersize">See me supersized</a>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<img src="./img/thumbs/P1010059.JPG" alt="Tatry 8" title="Drag me!" />
|
||||
<p>Tatry 8</p>
|
||||
<div>
|
||||
<a href="#" title="Trash me." class="tb_trash">Trash me</a>
|
||||
<a href="./img/P1010059.JPG" title="See me supersized." class="tb_supersize">See me supersized</a>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<img src="./img/thumbs/P1010061.JPG" alt="Tatry 9" title="Drag me!" />
|
||||
<p>Tatry 9</p>
|
||||
<div>
|
||||
<a href="#" title="Trash me." class="tb_trash">Trash me</a>
|
||||
<a href="./img/P1010061.JPG" title="See me supersized." class="tb_supersize">See me supersized</a>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<img src="./img/thumbs/P1010063.JPG" alt="Tatry 10" title="Drag me!" />
|
||||
<p>Tatry 10</p>
|
||||
<div>
|
||||
<a href="#" title="Trash me." class="tb_trash">Trash me</a>
|
||||
<a href="./img/P1010063.JPG" title="See me supersized." class="tb_supersize">See me supersized</a>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="sidebar">
|
||||
<div class="box" id="trash">
|
||||
<h2>Trash (drag me back)</h2>
|
||||
<div></div>
|
||||
</div>
|
||||
<div class="box" id="shred">
|
||||
<h2>Shredder (see me no more)</h2>
|
||||
<div></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<p>Demo footer here :)</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>jQuery UI Draggables and Droppables playground</title>
|
||||
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
||||
<meta http-equiv="content-language" content="en" />
|
||||
|
||||
<meta name="keywords" content="jquery, ui, droppables, draggables, demo" />
|
||||
<meta name="description" content="Demonstration of jQuery UI Droppables and Dragables. More to come." />
|
||||
<script type="text/javascript" src="../../../../jquery/jquery-1.2.6.js"></script>
|
||||
<script type="text/javascript" src="js/jquery.livequery.js"></script>
|
||||
<script type="text/javascript" src="js/jquery.blockUI.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../../../source/ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.draggable.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.droppable.js"></script>
|
||||
|
||||
<script type="text/javascript" src="./js/demo.js"></script>
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="./theme/css/screen.css" media="screen, projection" />
|
||||
</head>
|
||||
<body>
|
||||
<h1>Manage Your Photos</h1>
|
||||
<div id="body_wrap">
|
||||
<div id="content">
|
||||
<h2>Drag photos to the Trash or waste them in the Shredder:</h2>
|
||||
<ul class="gallery">
|
||||
<li>
|
||||
<img src="./img/thumbs/P1010020.JPG" alt="Tatry 1" title="Drag me!" />
|
||||
<p>Tatry 1</p>
|
||||
<div>
|
||||
<a href="#" title="Trash me." class="tb_trash">Trash me</a>
|
||||
<a href="./img/P1010020.JPG" title="See me supersized." class="tb_supersize">See me supersized</a>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<img src="./img/thumbs/P1010036.JPG" alt="Tatry 2" title="Drag me!" />
|
||||
<p>Tatry 2</p>
|
||||
<div>
|
||||
<a href="#" title="Trash me." class="tb_trash">Trash me</a>
|
||||
<a href="./img/P1010036.JPG" title="See me supersized." class="tb_supersize">See me supersized</a>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<img src="./img/thumbs/P1010039.JPG" alt="Tatry 3" title="Drag me!" />
|
||||
<p>Tatry 3</p>
|
||||
<div>
|
||||
<a href="#" title="Trash me." class="tb_trash">Trash me</a>
|
||||
<a href="./img/P1010039.JPG" title="See me supersized." class="tb_supersize">See me supersized</a>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<img src="./img/thumbs/P1010044.JPG" alt="Tatry 4" title="Drag me!" />
|
||||
<p>Tatry 4</p>
|
||||
<div>
|
||||
<a href="#" title="Trash me." class="tb_trash">Trash me</a>
|
||||
<a href="./img/P1010044.JPG" title="See me supersized." class="tb_supersize">See me supersized</a>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<img src="./img/thumbs/P1010050.JPG" alt="Tatry 5" title="Drag me!" />
|
||||
<p>Tatry 5</p>
|
||||
<div>
|
||||
<a href="#" title="Trash me." class="tb_trash">Trash me</a>
|
||||
<a href="./img/P1010050.JPG" title="See me supersized." class="tb_supersize">See me supersized</a>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<img src="./img/thumbs/P1010055.JPG" alt="Tatry 6" title="Drag me!" />
|
||||
<p>Tatry 6</p>
|
||||
<div>
|
||||
<a href="#" title="Trash me." class="tb_trash">Trash me</a>
|
||||
<a href="./img/P1010055.JPG" title="See me supersized." class="tb_supersize">See me supersized</a>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<img src="./img/thumbs/P1010058.JPG" alt="Tatry 7" title="Drag me!" />
|
||||
<p>Tatry 7</p>
|
||||
<div>
|
||||
<a href="#" title="Trash me." class="tb_trash">Trash me</a>
|
||||
<a href="./img/P1010058.JPG" title="See me supersized." class="tb_supersize">See me supersized</a>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<img src="./img/thumbs/P1010059.JPG" alt="Tatry 8" title="Drag me!" />
|
||||
<p>Tatry 8</p>
|
||||
<div>
|
||||
<a href="#" title="Trash me." class="tb_trash">Trash me</a>
|
||||
<a href="./img/P1010059.JPG" title="See me supersized." class="tb_supersize">See me supersized</a>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<img src="./img/thumbs/P1010061.JPG" alt="Tatry 9" title="Drag me!" />
|
||||
<p>Tatry 9</p>
|
||||
<div>
|
||||
<a href="#" title="Trash me." class="tb_trash">Trash me</a>
|
||||
<a href="./img/P1010061.JPG" title="See me supersized." class="tb_supersize">See me supersized</a>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<img src="./img/thumbs/P1010063.JPG" alt="Tatry 10" title="Drag me!" />
|
||||
<p>Tatry 10</p>
|
||||
<div>
|
||||
<a href="#" title="Trash me." class="tb_trash">Trash me</a>
|
||||
<a href="./img/P1010063.JPG" title="See me supersized." class="tb_supersize">See me supersized</a>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="sidebar">
|
||||
<div class="box" id="trash">
|
||||
<h2>Trash (drag me back)</h2>
|
||||
<div></div>
|
||||
</div>
|
||||
<div class="box" id="shred">
|
||||
<h2>Shredder (see me no more)</h2>
|
||||
<div></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="footer">
|
||||
<p>Demo footer here :)</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -1,130 +1,130 @@
|
||||
/*
|
||||
* The very first increment of Droppables&Draggables demo. The code is going to
|
||||
* be more concise (remove unnecessary code repetitions etc.). And imho the
|
||||
* photo management is a good candidate for demonstration of more jQuery UI
|
||||
* components (sortables, selectables...). More to come...
|
||||
*
|
||||
*/
|
||||
|
||||
$(window).bind('load', function() {
|
||||
// make images in the gallery draggable
|
||||
$('ul.gallery img').addClass('img_content').draggable({
|
||||
helper: 'clone'
|
||||
});
|
||||
|
||||
// make the trash box droppable, accepting images from the content section only
|
||||
$('#trash div').droppable({
|
||||
accept: '.img_content',
|
||||
activeClass: 'active',
|
||||
drop: function(ev, ui) {
|
||||
var $that = $(this);
|
||||
ui.draggable.parent().fadeOut('slow', function() {
|
||||
ui.draggable
|
||||
.hide()
|
||||
.appendTo($that)
|
||||
.fadeIn('slow')
|
||||
.animate({
|
||||
width: '72px',
|
||||
height: '54px'
|
||||
})
|
||||
.removeClass('img_content')
|
||||
.addClass('img_trash');
|
||||
$(this).remove();
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
// make the shredder box droppable, accepting images from both content and trash sections
|
||||
$('#shred div').droppable({
|
||||
accept: '.img_content, .img_trash',
|
||||
activeClass: 'active',
|
||||
drop: function(ev, ui) {
|
||||
var $that = $(this);
|
||||
// images from the content
|
||||
if (ui.draggable.hasClass('img_content')) {
|
||||
ui.draggable.parent().fadeOut('slow', function() {
|
||||
ui.draggable
|
||||
.appendTo($that)
|
||||
.animate({
|
||||
width: '0',
|
||||
height: '0'
|
||||
}, 'slow', function(){
|
||||
$(this).remove();
|
||||
});
|
||||
$(this).remove();
|
||||
});
|
||||
}
|
||||
// images from the trash
|
||||
else if (ui.draggable.hasClass('img_trash')) {
|
||||
ui.draggable
|
||||
.appendTo($that)
|
||||
.animate({
|
||||
width: '0',
|
||||
height: '0'
|
||||
}, 'slow', function(){
|
||||
$(this).remove();
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// make the gallery droppable as well, accepting images from the trash only
|
||||
$('ul.gallery').droppable({
|
||||
accept: '.img_trash',
|
||||
activeClass: 'active',
|
||||
drop: function(ev, ui) {
|
||||
var $that = $(this);
|
||||
ui.draggable.fadeOut('slow', function() {
|
||||
var $item = createGalleryItem(this).appendTo($that);
|
||||
$(this)
|
||||
.removeClass('img_trash')
|
||||
.addClass('img_content')
|
||||
.css({ width: '144px', height: '108px' })
|
||||
.show();
|
||||
$item.fadeIn('slow');
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
// handle the trash icon behavior
|
||||
$('a.tb_trash').livequery('click', function() {
|
||||
var $this = $(this);
|
||||
var $img = $this.parent().siblings('img');
|
||||
var $item = $this.parents('li');
|
||||
|
||||
$item.fadeOut('slow', function() {
|
||||
$img
|
||||
.hide()
|
||||
.appendTo('#trash div')
|
||||
.fadeIn('slow')
|
||||
.animate({
|
||||
width: '72px',
|
||||
height: '54px'
|
||||
})
|
||||
.removeClass('img_content')
|
||||
.addClass('img_trash');
|
||||
$(this).remove();
|
||||
});
|
||||
|
||||
return false;
|
||||
});
|
||||
|
||||
// handle the magnify button
|
||||
$('a.tb_supersize').livequery('click', function() {
|
||||
$('<img width="576" height="432">')
|
||||
.attr('src', $(this).attr('href'))
|
||||
.appendTo('#body_wrap')
|
||||
.displayBox();
|
||||
return false;
|
||||
});
|
||||
});
|
||||
|
||||
function createGalleryItem(img) {
|
||||
var title = img.getAttribute('alt');
|
||||
var href = img.getAttribute('src').replace(/thumbs\//, '');
|
||||
|
||||
var $item = $('<li><p>'+title+'</p><div><a href="#" title="Trash me" class="tb_trash">Trash me</a><a href="'+href+'" title="See me supersized" class="tb_supersize">See me supersized</a></div></li>').hide();
|
||||
$item.prepend($(img));
|
||||
|
||||
return $item;
|
||||
}
|
||||
/*
|
||||
* The very first increment of Droppables&Draggables demo. The code is going to
|
||||
* be more concise (remove unnecessary code repetitions etc.). And imho the
|
||||
* photo management is a good candidate for demonstration of more jQuery UI
|
||||
* components (sortables, selectables...). More to come...
|
||||
*
|
||||
*/
|
||||
|
||||
$(window).bind('load', function() {
|
||||
// make images in the gallery draggable
|
||||
$('ul.gallery img').addClass('img_content').draggable({
|
||||
helper: 'clone'
|
||||
});
|
||||
|
||||
// make the trash box droppable, accepting images from the content section only
|
||||
$('#trash div').droppable({
|
||||
accept: '.img_content',
|
||||
activeClass: 'active',
|
||||
drop: function(ev, ui) {
|
||||
var $that = $(this);
|
||||
ui.draggable.parent().fadeOut('slow', function() {
|
||||
ui.draggable
|
||||
.hide()
|
||||
.appendTo($that)
|
||||
.fadeIn('slow')
|
||||
.animate({
|
||||
width: '72px',
|
||||
height: '54px'
|
||||
})
|
||||
.removeClass('img_content')
|
||||
.addClass('img_trash');
|
||||
$(this).remove();
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
// make the shredder box droppable, accepting images from both content and trash sections
|
||||
$('#shred div').droppable({
|
||||
accept: '.img_content, .img_trash',
|
||||
activeClass: 'active',
|
||||
drop: function(ev, ui) {
|
||||
var $that = $(this);
|
||||
// images from the content
|
||||
if (ui.draggable.hasClass('img_content')) {
|
||||
ui.draggable.parent().fadeOut('slow', function() {
|
||||
ui.draggable
|
||||
.appendTo($that)
|
||||
.animate({
|
||||
width: '0',
|
||||
height: '0'
|
||||
}, 'slow', function(){
|
||||
$(this).remove();
|
||||
});
|
||||
$(this).remove();
|
||||
});
|
||||
}
|
||||
// images from the trash
|
||||
else if (ui.draggable.hasClass('img_trash')) {
|
||||
ui.draggable
|
||||
.appendTo($that)
|
||||
.animate({
|
||||
width: '0',
|
||||
height: '0'
|
||||
}, 'slow', function(){
|
||||
$(this).remove();
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// make the gallery droppable as well, accepting images from the trash only
|
||||
$('ul.gallery').droppable({
|
||||
accept: '.img_trash',
|
||||
activeClass: 'active',
|
||||
drop: function(ev, ui) {
|
||||
var $that = $(this);
|
||||
ui.draggable.fadeOut('slow', function() {
|
||||
var $item = createGalleryItem(this).appendTo($that);
|
||||
$(this)
|
||||
.removeClass('img_trash')
|
||||
.addClass('img_content')
|
||||
.css({ width: '144px', height: '108px' })
|
||||
.show();
|
||||
$item.fadeIn('slow');
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
// handle the trash icon behavior
|
||||
$('a.tb_trash').livequery('click', function() {
|
||||
var $this = $(this);
|
||||
var $img = $this.parent().siblings('img');
|
||||
var $item = $this.parents('li');
|
||||
|
||||
$item.fadeOut('slow', function() {
|
||||
$img
|
||||
.hide()
|
||||
.appendTo('#trash div')
|
||||
.fadeIn('slow')
|
||||
.animate({
|
||||
width: '72px',
|
||||
height: '54px'
|
||||
})
|
||||
.removeClass('img_content')
|
||||
.addClass('img_trash');
|
||||
$(this).remove();
|
||||
});
|
||||
|
||||
return false;
|
||||
});
|
||||
|
||||
// handle the magnify button
|
||||
$('a.tb_supersize').livequery('click', function() {
|
||||
$('<img width="576" height="432">')
|
||||
.attr('src', $(this).attr('href'))
|
||||
.appendTo('#body_wrap')
|
||||
.displayBox();
|
||||
return false;
|
||||
});
|
||||
});
|
||||
|
||||
function createGalleryItem(img) {
|
||||
var title = img.getAttribute('alt');
|
||||
var href = img.getAttribute('src').replace(/thumbs\//, '');
|
||||
|
||||
var $item = $('<li><p>'+title+'</p><div><a href="#" title="Trash me" class="tb_trash">Trash me</a><a href="'+href+'" title="See me supersized" class="tb_supersize">See me supersized</a></div></li>').hide();
|
||||
$item.prepend($(img));
|
||||
|
||||
return $item;
|
||||
}
|
||||
|
||||
@@ -1,361 +1,361 @@
|
||||
/*
|
||||
* jQuery blockUI plugin
|
||||
* Version 1.33 (09/14/2007)
|
||||
* @requires jQuery v1.1.1
|
||||
*
|
||||
* $Id: jquery.blockUI.js 3291 2007-09-14 23:56:25Z malsup $
|
||||
*
|
||||
* Examples at: http://malsup.com/jquery/block/
|
||||
* Copyright (c) 2007 M. Alsup
|
||||
* Dual licensed under the MIT and GPL licenses:
|
||||
* http://www.opensource.org/licenses/mit-license.php
|
||||
* http://www.gnu.org/licenses/gpl.html
|
||||
*/
|
||||
(function($) {
|
||||
/**
|
||||
* blockUI provides a mechanism for blocking user interaction with a page (or parts of a page).
|
||||
* This can be an effective way to simulate synchronous behavior during ajax operations without
|
||||
* locking the browser. It will prevent user operations for the current page while it is
|
||||
* active ane will return the page to normal when it is deactivate. blockUI accepts the following
|
||||
* two optional arguments:
|
||||
*
|
||||
* message (String|Element|jQuery): The message to be displayed while the UI is blocked. The message
|
||||
* argument can be a plain text string like "Processing...", an HTML string like
|
||||
* "<h1><img src="busy.gif" /> Please wait...</h1>", a DOM element, or a jQuery object.
|
||||
* The default message is "<h1>Please wait...</h1>"
|
||||
*
|
||||
* css (Object): Object which contains css property/values to override the default styles of
|
||||
* the message. Use this argument if you wish to override the default
|
||||
* styles. The css Object should be in a format suitable for the jQuery.css
|
||||
* function. For example:
|
||||
* $.blockUI({
|
||||
* backgroundColor: '#ff8',
|
||||
* border: '5px solid #f00,
|
||||
* fontWeight: 'bold'
|
||||
* });
|
||||
*
|
||||
* The default blocking message used when blocking the entire page is "<h1>Please wait...</h1>"
|
||||
* but this can be overridden by assigning a value to $.blockUI.defaults.pageMessage in your
|
||||
* own code. For example:
|
||||
*
|
||||
* $.blockUI.defaults.pageMessage = "<h1>Bitte Wartezeit</h1>";
|
||||
*
|
||||
* The default message styling can also be overridden. For example:
|
||||
*
|
||||
* $.extend($.blockUI.defaults.pageMessageCSS, { color: '#00a', backgroundColor: '#0f0' });
|
||||
*
|
||||
* The default styles work well for simple messages like "Please wait", but for longer messages
|
||||
* style overrides may be necessary.
|
||||
*
|
||||
* @example $.blockUI();
|
||||
* @desc prevent user interaction with the page (and show the default message of 'Please wait...')
|
||||
*
|
||||
* @example $.blockUI( { backgroundColor: '#f00', color: '#fff'} );
|
||||
* @desc prevent user interaction and override the default styles of the message to use a white on red color scheme
|
||||
*
|
||||
* @example $.blockUI('Processing...');
|
||||
* @desc prevent user interaction and display the message "Processing..." instead of the default message
|
||||
*
|
||||
* @name blockUI
|
||||
* @param String|jQuery|Element message Message to display while the UI is blocked
|
||||
* @param Object css Style object to control look of the message
|
||||
* @cat Plugins/blockUI
|
||||
*/
|
||||
$.blockUI = function(msg, css, opts) {
|
||||
$.blockUI.impl.install(window, msg, css, opts);
|
||||
};
|
||||
|
||||
// expose version number so other plugins can interogate
|
||||
$.blockUI.version = 1.33;
|
||||
|
||||
/**
|
||||
* unblockUI removes the UI block that was put in place by blockUI
|
||||
*
|
||||
* @example $.unblockUI();
|
||||
* @desc unblocks the page
|
||||
*
|
||||
* @name unblockUI
|
||||
* @cat Plugins/blockUI
|
||||
*/
|
||||
$.unblockUI = function(opts) {
|
||||
$.blockUI.impl.remove(window, opts);
|
||||
};
|
||||
|
||||
/**
|
||||
* Blocks user interaction with the selected elements. (Hat tip: Much of
|
||||
* this logic comes from Brandon Aaron's bgiframe plugin. Thanks, Brandon!)
|
||||
* By default, no message is displayed when blocking elements.
|
||||
*
|
||||
* @example $('div.special').block();
|
||||
* @desc prevent user interaction with all div elements with the 'special' class.
|
||||
*
|
||||
* @example $('div.special').block('Please wait');
|
||||
* @desc prevent user interaction with all div elements with the 'special' class
|
||||
* and show a message over the blocked content.
|
||||
*
|
||||
* @name block
|
||||
* @type jQuery
|
||||
* @param String|jQuery|Element message Message to display while the element is blocked
|
||||
* @param Object css Style object to control look of the message
|
||||
* @cat Plugins/blockUI
|
||||
*/
|
||||
$.fn.block = function(msg, css, opts) {
|
||||
return this.each(function() {
|
||||
if (!this.$pos_checked) {
|
||||
if ($.css(this,"position") == 'static')
|
||||
this.style.position = 'relative';
|
||||
if ($.browser.msie) this.style.zoom = 1; // force 'hasLayout' in IE
|
||||
this.$pos_checked = 1;
|
||||
}
|
||||
$.blockUI.impl.install(this, msg, css, opts);
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* Unblocks content that was blocked by "block()"
|
||||
*
|
||||
* @example $('div.special').unblock();
|
||||
* @desc unblocks all div elements with the 'special' class.
|
||||
*
|
||||
* @name unblock
|
||||
* @type jQuery
|
||||
* @cat Plugins/blockUI
|
||||
*/
|
||||
$.fn.unblock = function(opts) {
|
||||
return this.each(function() {
|
||||
$.blockUI.impl.remove(this, opts);
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* displays the first matched element in a "display box" above a page overlay.
|
||||
*
|
||||
* @example $('#myImage').displayBox();
|
||||
* @desc displays "myImage" element in a box
|
||||
*
|
||||
* @name displayBox
|
||||
* @type jQuery
|
||||
* @cat Plugins/blockUI
|
||||
*/
|
||||
$.fn.displayBox = function(css, fn, isFlash) {
|
||||
var msg = this[0];
|
||||
if (!msg) return;
|
||||
var $msg = $(msg);
|
||||
css = css || {};
|
||||
|
||||
var w = $msg.width() || $msg.attr('width') || css.width || $.blockUI.defaults.displayBoxCSS.width;
|
||||
var h = $msg.height() || $msg.attr('height') || css.height || $.blockUI.defaults.displayBoxCSS.height ;
|
||||
if (w[w.length-1] == '%') {
|
||||
var ww = document.documentElement.clientWidth || document.body.clientWidth;
|
||||
w = parseInt(w) || 100;
|
||||
w = (w * ww) / 100;
|
||||
}
|
||||
if (h[h.length-1] == '%') {
|
||||
var hh = document.documentElement.clientHeight || document.body.clientHeight;
|
||||
h = parseInt(h) || 100;
|
||||
h = (h * hh) / 100;
|
||||
}
|
||||
|
||||
var ml = '-' + parseInt(w)/2 + 'px';
|
||||
var mt = '-' + parseInt(h)/2 + 'px';
|
||||
|
||||
// supress opacity on overlay if displaying flash content on mac/ff platform
|
||||
var ua = navigator.userAgent.toLowerCase();
|
||||
var opts = {
|
||||
displayMode: fn || 1,
|
||||
noalpha: isFlash && /mac/.test(ua) && /firefox/.test(ua)
|
||||
};
|
||||
|
||||
$.blockUI.impl.install(window, msg, { width: w, height: h, marginTop: mt, marginLeft: ml }, opts);
|
||||
};
|
||||
|
||||
|
||||
// override these in your code to change the default messages and styles
|
||||
$.blockUI.defaults = {
|
||||
// the message displayed when blocking the entire page
|
||||
pageMessage: '<h1>Please wait...</h1>',
|
||||
// the message displayed when blocking an element
|
||||
elementMessage: '', // none
|
||||
// styles for the overlay iframe
|
||||
overlayCSS: { backgroundColor: '#fff', opacity: '0.5' },
|
||||
// styles for the message when blocking the entire page
|
||||
pageMessageCSS: { width:'250px', margin:'-50px 0 0 -125px', top:'50%', left:'50%', textAlign:'center', color:'#000', backgroundColor:'#fff', border:'3px solid #aaa' },
|
||||
// styles for the message when blocking an element
|
||||
elementMessageCSS: { width:'250px', padding:'10px', textAlign:'center', backgroundColor:'#fff'},
|
||||
// styles for the displayBox
|
||||
displayBoxCSS: { width: '400px', height: '400px', top:'50%', left:'50%' },
|
||||
// allow body element to be stetched in ie6
|
||||
ie6Stretch: 1,
|
||||
// supress tab nav from leaving blocking content?
|
||||
allowTabToLeave: 0,
|
||||
// Title attribute for overlay when using displayBox
|
||||
closeMessage: 'Click to close',
|
||||
// use fadeOut effect when unblocking (can be overridden on unblock call)
|
||||
fadeOut: 1,
|
||||
// fadeOut transition time in millis
|
||||
fadeTime: 400
|
||||
};
|
||||
|
||||
// the gory details
|
||||
$.blockUI.impl = {
|
||||
box: null,
|
||||
boxCallback: null,
|
||||
pageBlock: null,
|
||||
pageBlockEls: [],
|
||||
op8: window.opera && window.opera.version() < 9,
|
||||
ie6: $.browser.msie && /MSIE 6.0/.test(navigator.userAgent),
|
||||
install: function(el, msg, css, opts) {
|
||||
opts = opts || {};
|
||||
this.boxCallback = typeof opts.displayMode == 'function' ? opts.displayMode : null;
|
||||
this.box = opts.displayMode ? msg : null;
|
||||
var full = (el == window);
|
||||
|
||||
// use logical settings for opacity support based on browser but allow overrides via opts arg
|
||||
var noalpha = this.op8 || $.browser.mozilla && /Linux/.test(navigator.platform);
|
||||
if (typeof opts.alphaOverride != 'undefined')
|
||||
noalpha = opts.alphaOverride == 0 ? 1 : 0;
|
||||
|
||||
if (full && this.pageBlock) this.remove(window, {fadeOut:0});
|
||||
// check to see if we were only passed the css object (a literal)
|
||||
if (msg && typeof msg == 'object' && !msg.jquery && !msg.nodeType) {
|
||||
css = msg;
|
||||
msg = null;
|
||||
}
|
||||
msg = msg ? (msg.nodeType ? $(msg) : msg) : full ? $.blockUI.defaults.pageMessage : $.blockUI.defaults.elementMessage;
|
||||
if (opts.displayMode)
|
||||
var basecss = jQuery.extend({}, $.blockUI.defaults.displayBoxCSS);
|
||||
else
|
||||
var basecss = jQuery.extend({}, full ? $.blockUI.defaults.pageMessageCSS : $.blockUI.defaults.elementMessageCSS);
|
||||
css = jQuery.extend(basecss, css || {});
|
||||
var f = ($.browser.msie) ? $('<iframe class="blockUI" style="z-index:1000;border:none;margin:0;padding:0;position:absolute;width:100%;height:100%;top:0;left:0" src="javascript:false;"></iframe>')
|
||||
: $('<div class="blockUI" style="display:none"></div>');
|
||||
var w = $('<div class="blockUI" style="z-index:1001;cursor:wait;border:none;margin:0;padding:0;width:100%;height:100%;top:0;left:0"></div>');
|
||||
var m = full ? $('<div class="blockUI blockMsg" style="z-index:1002;cursor:wait;padding:0;position:fixed"></div>')
|
||||
: $('<div class="blockUI" style="display:none;z-index:1002;cursor:wait;position:absolute"></div>');
|
||||
w.css('position', full ? 'fixed' : 'absolute');
|
||||
if (msg) m.css(css);
|
||||
if (!noalpha) w.css($.blockUI.defaults.overlayCSS);
|
||||
if (this.op8) w.css({ width:''+el.clientWidth,height:''+el.clientHeight }); // lame
|
||||
if ($.browser.msie) f.css('opacity','0.0');
|
||||
|
||||
$([f[0],w[0],m[0]]).appendTo(full ? 'body' : el);
|
||||
|
||||
// ie7 must use absolute positioning in quirks mode and to account for activex issues (when scrolling)
|
||||
var expr = $.browser.msie && (!$.boxModel || $('object,embed', full ? null : el).length > 0);
|
||||
if (this.ie6 || expr) {
|
||||
// stretch content area if it's short
|
||||
if (full && $.blockUI.defaults.ie6Stretch && $.boxModel)
|
||||
$('html,body').css('height','100%');
|
||||
|
||||
// fix ie6 problem when blocked element has a border width
|
||||
if ((this.ie6 || !$.boxModel) && !full) {
|
||||
var t = this.sz(el,'borderTopWidth'), l = this.sz(el,'borderLeftWidth');
|
||||
var fixT = t ? '(0 - '+t+')' : 0;
|
||||
var fixL = l ? '(0 - '+l+')' : 0;
|
||||
}
|
||||
|
||||
// simulate fixed position
|
||||
$.each([f,w,m], function(i,o) {
|
||||
var s = o[0].style;
|
||||
s.position = 'absolute';
|
||||
if (i < 2) {
|
||||
full ? s.setExpression('height','document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + "px"')
|
||||
: s.setExpression('height','this.parentNode.offsetHeight + "px"');
|
||||
full ? s.setExpression('width','jQuery.boxModel && document.documentElement.clientWidth || document.body.clientWidth + "px"')
|
||||
: s.setExpression('width','this.parentNode.offsetWidth + "px"');
|
||||
if (fixL) s.setExpression('left', fixL);
|
||||
if (fixT) s.setExpression('top', fixT);
|
||||
}
|
||||
else {
|
||||
if (full) s.setExpression('top','(document.documentElement.clientHeight || document.body.clientHeight) / 2 - (this.offsetHeight / 2) + (blah = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + "px"');
|
||||
s.marginTop = 0;
|
||||
}
|
||||
});
|
||||
}
|
||||
if (opts.displayMode) {
|
||||
w.css('cursor','default').attr('title', $.blockUI.defaults.closeMessage);
|
||||
m.css('cursor','default');
|
||||
$([f[0],w[0],m[0]]).removeClass('blockUI').addClass('displayBox');
|
||||
$().click($.blockUI.impl.boxHandler).bind('keypress', $.blockUI.impl.boxHandler);
|
||||
}
|
||||
else
|
||||
this.bind(1, el);
|
||||
m.append(msg).show();
|
||||
if (msg.jquery) msg.show();
|
||||
if (opts.displayMode) return;
|
||||
if (full) {
|
||||
this.pageBlock = m[0];
|
||||
this.pageBlockEls = $(':input:enabled:visible',this.pageBlock);
|
||||
setTimeout(this.focus, 20);
|
||||
}
|
||||
else this.center(m[0]);
|
||||
},
|
||||
remove: function(el, opts) {
|
||||
var o = $.extend({}, $.blockUI.defaults, opts);
|
||||
this.bind(0, el);
|
||||
var full = el == window;
|
||||
var els = full ? $('body').children().filter('.blockUI') : $('.blockUI', el);
|
||||
if (full) this.pageBlock = this.pageBlockEls = null;
|
||||
|
||||
if (o.fadeOut) {
|
||||
els.fadeOut(o.fadeTime, function() {
|
||||
if (this.parentNode) this.parentNode.removeChild(this);
|
||||
});
|
||||
}
|
||||
else els.remove();
|
||||
},
|
||||
boxRemove: function(el) {
|
||||
$().unbind('click',$.blockUI.impl.boxHandler).unbind('keypress', $.blockUI.impl.boxHandler);
|
||||
if (this.boxCallback)
|
||||
this.boxCallback(this.box);
|
||||
$('body .displayBox').hide().remove();
|
||||
},
|
||||
// event handler to suppress keyboard/mouse events when blocking
|
||||
handler: function(e) {
|
||||
if (e.keyCode && e.keyCode == 9) {
|
||||
if ($.blockUI.impl.pageBlock && !$.blockUI.defaults.allowTabToLeave) {
|
||||
var els = $.blockUI.impl.pageBlockEls;
|
||||
var fwd = !e.shiftKey && e.target == els[els.length-1];
|
||||
var back = e.shiftKey && e.target == els[0];
|
||||
if (fwd || back) {
|
||||
setTimeout(function(){$.blockUI.impl.focus(back)},10);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
if ($(e.target).parents('div.blockMsg').length > 0)
|
||||
return true;
|
||||
return $(e.target).parents().children().filter('div.blockUI').length == 0;
|
||||
},
|
||||
boxHandler: function(e) {
|
||||
if ((e.keyCode && e.keyCode == 27) || (e.type == 'click' && $(e.target).parents('div.blockMsg').length == 0))
|
||||
$.blockUI.impl.boxRemove();
|
||||
return true;
|
||||
},
|
||||
// bind/unbind the handler
|
||||
bind: function(b, el) {
|
||||
var full = el == window;
|
||||
// don't bother unbinding if there is nothing to unbind
|
||||
if (!b && (full && !this.pageBlock || !full && !el.$blocked)) return;
|
||||
if (!full) el.$blocked = b;
|
||||
var $e = $(el).find('a,:input');
|
||||
$.each(['mousedown','mouseup','keydown','keypress','click'], function(i,o) {
|
||||
$e[b?'bind':'unbind'](o, $.blockUI.impl.handler);
|
||||
});
|
||||
},
|
||||
focus: function(back) {
|
||||
if (!$.blockUI.impl.pageBlockEls) return;
|
||||
var e = $.blockUI.impl.pageBlockEls[back===true ? $.blockUI.impl.pageBlockEls.length-1 : 0];
|
||||
if (e) e.focus();
|
||||
},
|
||||
center: function(el) {
|
||||
var p = el.parentNode, s = el.style;
|
||||
var l = ((p.offsetWidth - el.offsetWidth)/2) - this.sz(p,'borderLeftWidth');
|
||||
var t = ((p.offsetHeight - el.offsetHeight)/2) - this.sz(p,'borderTopWidth');
|
||||
s.left = l > 0 ? (l+'px') : '0';
|
||||
s.top = t > 0 ? (t+'px') : '0';
|
||||
},
|
||||
sz: function(el, p) { return parseInt($.css(el,p))||0; }
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
/*
|
||||
* jQuery blockUI plugin
|
||||
* Version 1.33 (09/14/2007)
|
||||
* @requires jQuery v1.1.1
|
||||
*
|
||||
* $Id: jquery.blockUI.js 3291 2007-09-14 23:56:25Z malsup $
|
||||
*
|
||||
* Examples at: http://malsup.com/jquery/block/
|
||||
* Copyright (c) 2007 M. Alsup
|
||||
* Dual licensed under the MIT and GPL licenses:
|
||||
* http://www.opensource.org/licenses/mit-license.php
|
||||
* http://www.gnu.org/licenses/gpl.html
|
||||
*/
|
||||
(function($) {
|
||||
/**
|
||||
* blockUI provides a mechanism for blocking user interaction with a page (or parts of a page).
|
||||
* This can be an effective way to simulate synchronous behavior during ajax operations without
|
||||
* locking the browser. It will prevent user operations for the current page while it is
|
||||
* active ane will return the page to normal when it is deactivate. blockUI accepts the following
|
||||
* two optional arguments:
|
||||
*
|
||||
* message (String|Element|jQuery): The message to be displayed while the UI is blocked. The message
|
||||
* argument can be a plain text string like "Processing...", an HTML string like
|
||||
* "<h1><img src="busy.gif" /> Please wait...</h1>", a DOM element, or a jQuery object.
|
||||
* The default message is "<h1>Please wait...</h1>"
|
||||
*
|
||||
* css (Object): Object which contains css property/values to override the default styles of
|
||||
* the message. Use this argument if you wish to override the default
|
||||
* styles. The css Object should be in a format suitable for the jQuery.css
|
||||
* function. For example:
|
||||
* $.blockUI({
|
||||
* backgroundColor: '#ff8',
|
||||
* border: '5px solid #f00,
|
||||
* fontWeight: 'bold'
|
||||
* });
|
||||
*
|
||||
* The default blocking message used when blocking the entire page is "<h1>Please wait...</h1>"
|
||||
* but this can be overridden by assigning a value to $.blockUI.defaults.pageMessage in your
|
||||
* own code. For example:
|
||||
*
|
||||
* $.blockUI.defaults.pageMessage = "<h1>Bitte Wartezeit</h1>";
|
||||
*
|
||||
* The default message styling can also be overridden. For example:
|
||||
*
|
||||
* $.extend($.blockUI.defaults.pageMessageCSS, { color: '#00a', backgroundColor: '#0f0' });
|
||||
*
|
||||
* The default styles work well for simple messages like "Please wait", but for longer messages
|
||||
* style overrides may be necessary.
|
||||
*
|
||||
* @example $.blockUI();
|
||||
* @desc prevent user interaction with the page (and show the default message of 'Please wait...')
|
||||
*
|
||||
* @example $.blockUI( { backgroundColor: '#f00', color: '#fff'} );
|
||||
* @desc prevent user interaction and override the default styles of the message to use a white on red color scheme
|
||||
*
|
||||
* @example $.blockUI('Processing...');
|
||||
* @desc prevent user interaction and display the message "Processing..." instead of the default message
|
||||
*
|
||||
* @name blockUI
|
||||
* @param String|jQuery|Element message Message to display while the UI is blocked
|
||||
* @param Object css Style object to control look of the message
|
||||
* @cat Plugins/blockUI
|
||||
*/
|
||||
$.blockUI = function(msg, css, opts) {
|
||||
$.blockUI.impl.install(window, msg, css, opts);
|
||||
};
|
||||
|
||||
// expose version number so other plugins can interogate
|
||||
$.blockUI.version = 1.33;
|
||||
|
||||
/**
|
||||
* unblockUI removes the UI block that was put in place by blockUI
|
||||
*
|
||||
* @example $.unblockUI();
|
||||
* @desc unblocks the page
|
||||
*
|
||||
* @name unblockUI
|
||||
* @cat Plugins/blockUI
|
||||
*/
|
||||
$.unblockUI = function(opts) {
|
||||
$.blockUI.impl.remove(window, opts);
|
||||
};
|
||||
|
||||
/**
|
||||
* Blocks user interaction with the selected elements. (Hat tip: Much of
|
||||
* this logic comes from Brandon Aaron's bgiframe plugin. Thanks, Brandon!)
|
||||
* By default, no message is displayed when blocking elements.
|
||||
*
|
||||
* @example $('div.special').block();
|
||||
* @desc prevent user interaction with all div elements with the 'special' class.
|
||||
*
|
||||
* @example $('div.special').block('Please wait');
|
||||
* @desc prevent user interaction with all div elements with the 'special' class
|
||||
* and show a message over the blocked content.
|
||||
*
|
||||
* @name block
|
||||
* @type jQuery
|
||||
* @param String|jQuery|Element message Message to display while the element is blocked
|
||||
* @param Object css Style object to control look of the message
|
||||
* @cat Plugins/blockUI
|
||||
*/
|
||||
$.fn.block = function(msg, css, opts) {
|
||||
return this.each(function() {
|
||||
if (!this.$pos_checked) {
|
||||
if ($.css(this,"position") == 'static')
|
||||
this.style.position = 'relative';
|
||||
if ($.browser.msie) this.style.zoom = 1; // force 'hasLayout' in IE
|
||||
this.$pos_checked = 1;
|
||||
}
|
||||
$.blockUI.impl.install(this, msg, css, opts);
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* Unblocks content that was blocked by "block()"
|
||||
*
|
||||
* @example $('div.special').unblock();
|
||||
* @desc unblocks all div elements with the 'special' class.
|
||||
*
|
||||
* @name unblock
|
||||
* @type jQuery
|
||||
* @cat Plugins/blockUI
|
||||
*/
|
||||
$.fn.unblock = function(opts) {
|
||||
return this.each(function() {
|
||||
$.blockUI.impl.remove(this, opts);
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* displays the first matched element in a "display box" above a page overlay.
|
||||
*
|
||||
* @example $('#myImage').displayBox();
|
||||
* @desc displays "myImage" element in a box
|
||||
*
|
||||
* @name displayBox
|
||||
* @type jQuery
|
||||
* @cat Plugins/blockUI
|
||||
*/
|
||||
$.fn.displayBox = function(css, fn, isFlash) {
|
||||
var msg = this[0];
|
||||
if (!msg) return;
|
||||
var $msg = $(msg);
|
||||
css = css || {};
|
||||
|
||||
var w = $msg.width() || $msg.attr('width') || css.width || $.blockUI.defaults.displayBoxCSS.width;
|
||||
var h = $msg.height() || $msg.attr('height') || css.height || $.blockUI.defaults.displayBoxCSS.height ;
|
||||
if (w[w.length-1] == '%') {
|
||||
var ww = document.documentElement.clientWidth || document.body.clientWidth;
|
||||
w = parseInt(w) || 100;
|
||||
w = (w * ww) / 100;
|
||||
}
|
||||
if (h[h.length-1] == '%') {
|
||||
var hh = document.documentElement.clientHeight || document.body.clientHeight;
|
||||
h = parseInt(h) || 100;
|
||||
h = (h * hh) / 100;
|
||||
}
|
||||
|
||||
var ml = '-' + parseInt(w)/2 + 'px';
|
||||
var mt = '-' + parseInt(h)/2 + 'px';
|
||||
|
||||
// supress opacity on overlay if displaying flash content on mac/ff platform
|
||||
var ua = navigator.userAgent.toLowerCase();
|
||||
var opts = {
|
||||
displayMode: fn || 1,
|
||||
noalpha: isFlash && /mac/.test(ua) && /firefox/.test(ua)
|
||||
};
|
||||
|
||||
$.blockUI.impl.install(window, msg, { width: w, height: h, marginTop: mt, marginLeft: ml }, opts);
|
||||
};
|
||||
|
||||
|
||||
// override these in your code to change the default messages and styles
|
||||
$.blockUI.defaults = {
|
||||
// the message displayed when blocking the entire page
|
||||
pageMessage: '<h1>Please wait...</h1>',
|
||||
// the message displayed when blocking an element
|
||||
elementMessage: '', // none
|
||||
// styles for the overlay iframe
|
||||
overlayCSS: { backgroundColor: '#fff', opacity: '0.5' },
|
||||
// styles for the message when blocking the entire page
|
||||
pageMessageCSS: { width:'250px', margin:'-50px 0 0 -125px', top:'50%', left:'50%', textAlign:'center', color:'#000', backgroundColor:'#fff', border:'3px solid #aaa' },
|
||||
// styles for the message when blocking an element
|
||||
elementMessageCSS: { width:'250px', padding:'10px', textAlign:'center', backgroundColor:'#fff'},
|
||||
// styles for the displayBox
|
||||
displayBoxCSS: { width: '400px', height: '400px', top:'50%', left:'50%' },
|
||||
// allow body element to be stetched in ie6
|
||||
ie6Stretch: 1,
|
||||
// supress tab nav from leaving blocking content?
|
||||
allowTabToLeave: 0,
|
||||
// Title attribute for overlay when using displayBox
|
||||
closeMessage: 'Click to close',
|
||||
// use fadeOut effect when unblocking (can be overridden on unblock call)
|
||||
fadeOut: 1,
|
||||
// fadeOut transition time in millis
|
||||
fadeTime: 400
|
||||
};
|
||||
|
||||
// the gory details
|
||||
$.blockUI.impl = {
|
||||
box: null,
|
||||
boxCallback: null,
|
||||
pageBlock: null,
|
||||
pageBlockEls: [],
|
||||
op8: window.opera && window.opera.version() < 9,
|
||||
ie6: $.browser.msie && /MSIE 6.0/.test(navigator.userAgent),
|
||||
install: function(el, msg, css, opts) {
|
||||
opts = opts || {};
|
||||
this.boxCallback = typeof opts.displayMode == 'function' ? opts.displayMode : null;
|
||||
this.box = opts.displayMode ? msg : null;
|
||||
var full = (el == window);
|
||||
|
||||
// use logical settings for opacity support based on browser but allow overrides via opts arg
|
||||
var noalpha = this.op8 || $.browser.mozilla && /Linux/.test(navigator.platform);
|
||||
if (typeof opts.alphaOverride != 'undefined')
|
||||
noalpha = opts.alphaOverride == 0 ? 1 : 0;
|
||||
|
||||
if (full && this.pageBlock) this.remove(window, {fadeOut:0});
|
||||
// check to see if we were only passed the css object (a literal)
|
||||
if (msg && typeof msg == 'object' && !msg.jquery && !msg.nodeType) {
|
||||
css = msg;
|
||||
msg = null;
|
||||
}
|
||||
msg = msg ? (msg.nodeType ? $(msg) : msg) : full ? $.blockUI.defaults.pageMessage : $.blockUI.defaults.elementMessage;
|
||||
if (opts.displayMode)
|
||||
var basecss = jQuery.extend({}, $.blockUI.defaults.displayBoxCSS);
|
||||
else
|
||||
var basecss = jQuery.extend({}, full ? $.blockUI.defaults.pageMessageCSS : $.blockUI.defaults.elementMessageCSS);
|
||||
css = jQuery.extend(basecss, css || {});
|
||||
var f = ($.browser.msie) ? $('<iframe class="blockUI" style="z-index:1000;border:none;margin:0;padding:0;position:absolute;width:100%;height:100%;top:0;left:0" src="javascript:false;"></iframe>')
|
||||
: $('<div class="blockUI" style="display:none"></div>');
|
||||
var w = $('<div class="blockUI" style="z-index:1001;cursor:wait;border:none;margin:0;padding:0;width:100%;height:100%;top:0;left:0"></div>');
|
||||
var m = full ? $('<div class="blockUI blockMsg" style="z-index:1002;cursor:wait;padding:0;position:fixed"></div>')
|
||||
: $('<div class="blockUI" style="display:none;z-index:1002;cursor:wait;position:absolute"></div>');
|
||||
w.css('position', full ? 'fixed' : 'absolute');
|
||||
if (msg) m.css(css);
|
||||
if (!noalpha) w.css($.blockUI.defaults.overlayCSS);
|
||||
if (this.op8) w.css({ width:''+el.clientWidth,height:''+el.clientHeight }); // lame
|
||||
if ($.browser.msie) f.css('opacity','0.0');
|
||||
|
||||
$([f[0],w[0],m[0]]).appendTo(full ? 'body' : el);
|
||||
|
||||
// ie7 must use absolute positioning in quirks mode and to account for activex issues (when scrolling)
|
||||
var expr = $.browser.msie && (!$.boxModel || $('object,embed', full ? null : el).length > 0);
|
||||
if (this.ie6 || expr) {
|
||||
// stretch content area if it's short
|
||||
if (full && $.blockUI.defaults.ie6Stretch && $.boxModel)
|
||||
$('html,body').css('height','100%');
|
||||
|
||||
// fix ie6 problem when blocked element has a border width
|
||||
if ((this.ie6 || !$.boxModel) && !full) {
|
||||
var t = this.sz(el,'borderTopWidth'), l = this.sz(el,'borderLeftWidth');
|
||||
var fixT = t ? '(0 - '+t+')' : 0;
|
||||
var fixL = l ? '(0 - '+l+')' : 0;
|
||||
}
|
||||
|
||||
// simulate fixed position
|
||||
$.each([f,w,m], function(i,o) {
|
||||
var s = o[0].style;
|
||||
s.position = 'absolute';
|
||||
if (i < 2) {
|
||||
full ? s.setExpression('height','document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + "px"')
|
||||
: s.setExpression('height','this.parentNode.offsetHeight + "px"');
|
||||
full ? s.setExpression('width','jQuery.boxModel && document.documentElement.clientWidth || document.body.clientWidth + "px"')
|
||||
: s.setExpression('width','this.parentNode.offsetWidth + "px"');
|
||||
if (fixL) s.setExpression('left', fixL);
|
||||
if (fixT) s.setExpression('top', fixT);
|
||||
}
|
||||
else {
|
||||
if (full) s.setExpression('top','(document.documentElement.clientHeight || document.body.clientHeight) / 2 - (this.offsetHeight / 2) + (blah = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + "px"');
|
||||
s.marginTop = 0;
|
||||
}
|
||||
});
|
||||
}
|
||||
if (opts.displayMode) {
|
||||
w.css('cursor','default').attr('title', $.blockUI.defaults.closeMessage);
|
||||
m.css('cursor','default');
|
||||
$([f[0],w[0],m[0]]).removeClass('blockUI').addClass('displayBox');
|
||||
$().click($.blockUI.impl.boxHandler).bind('keypress', $.blockUI.impl.boxHandler);
|
||||
}
|
||||
else
|
||||
this.bind(1, el);
|
||||
m.append(msg).show();
|
||||
if (msg.jquery) msg.show();
|
||||
if (opts.displayMode) return;
|
||||
if (full) {
|
||||
this.pageBlock = m[0];
|
||||
this.pageBlockEls = $(':input:enabled:visible',this.pageBlock);
|
||||
setTimeout(this.focus, 20);
|
||||
}
|
||||
else this.center(m[0]);
|
||||
},
|
||||
remove: function(el, opts) {
|
||||
var o = $.extend({}, $.blockUI.defaults, opts);
|
||||
this.bind(0, el);
|
||||
var full = el == window;
|
||||
var els = full ? $('body').children().filter('.blockUI') : $('.blockUI', el);
|
||||
if (full) this.pageBlock = this.pageBlockEls = null;
|
||||
|
||||
if (o.fadeOut) {
|
||||
els.fadeOut(o.fadeTime, function() {
|
||||
if (this.parentNode) this.parentNode.removeChild(this);
|
||||
});
|
||||
}
|
||||
else els.remove();
|
||||
},
|
||||
boxRemove: function(el) {
|
||||
$().unbind('click',$.blockUI.impl.boxHandler).unbind('keypress', $.blockUI.impl.boxHandler);
|
||||
if (this.boxCallback)
|
||||
this.boxCallback(this.box);
|
||||
$('body .displayBox').hide().remove();
|
||||
},
|
||||
// event handler to suppress keyboard/mouse events when blocking
|
||||
handler: function(e) {
|
||||
if (e.keyCode && e.keyCode == 9) {
|
||||
if ($.blockUI.impl.pageBlock && !$.blockUI.defaults.allowTabToLeave) {
|
||||
var els = $.blockUI.impl.pageBlockEls;
|
||||
var fwd = !e.shiftKey && e.target == els[els.length-1];
|
||||
var back = e.shiftKey && e.target == els[0];
|
||||
if (fwd || back) {
|
||||
setTimeout(function(){$.blockUI.impl.focus(back)},10);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
if ($(e.target).parents('div.blockMsg').length > 0)
|
||||
return true;
|
||||
return $(e.target).parents().children().filter('div.blockUI').length == 0;
|
||||
},
|
||||
boxHandler: function(e) {
|
||||
if ((e.keyCode && e.keyCode == 27) || (e.type == 'click' && $(e.target).parents('div.blockMsg').length == 0))
|
||||
$.blockUI.impl.boxRemove();
|
||||
return true;
|
||||
},
|
||||
// bind/unbind the handler
|
||||
bind: function(b, el) {
|
||||
var full = el == window;
|
||||
// don't bother unbinding if there is nothing to unbind
|
||||
if (!b && (full && !this.pageBlock || !full && !el.$blocked)) return;
|
||||
if (!full) el.$blocked = b;
|
||||
var $e = $(el).find('a,:input');
|
||||
$.each(['mousedown','mouseup','keydown','keypress','click'], function(i,o) {
|
||||
$e[b?'bind':'unbind'](o, $.blockUI.impl.handler);
|
||||
});
|
||||
},
|
||||
focus: function(back) {
|
||||
if (!$.blockUI.impl.pageBlockEls) return;
|
||||
var e = $.blockUI.impl.pageBlockEls[back===true ? $.blockUI.impl.pageBlockEls.length-1 : 0];
|
||||
if (e) e.focus();
|
||||
},
|
||||
center: function(el) {
|
||||
var p = el.parentNode, s = el.style;
|
||||
var l = ((p.offsetWidth - el.offsetWidth)/2) - this.sz(p,'borderLeftWidth');
|
||||
var t = ((p.offsetHeight - el.offsetHeight)/2) - this.sz(p,'borderTopWidth');
|
||||
s.left = l > 0 ? (l+'px') : '0';
|
||||
s.top = t > 0 ? (t+'px') : '0';
|
||||
},
|
||||
sz: function(el, p) { return parseInt($.css(el,p))||0; }
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
|
||||
@@ -1,179 +1,179 @@
|
||||
body {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
line-height: 1.5em;
|
||||
font-size: 75%; /* gives us 12px in most browsers */
|
||||
font-family: "Helvetica Neue", "Lucida Grande", Helvetica, Arial, Verdana, sans-serif;
|
||||
background: #aefe05 url('../img/side_top.jpg') repeat-x top; /* body background from ui.jquery.com */
|
||||
color: 222;
|
||||
}
|
||||
|
||||
/*
|
||||
================================
|
||||
=LAYOUT
|
||||
================================ */
|
||||
h1 {
|
||||
padding: 0 0 0 52px;
|
||||
margin: 0;
|
||||
font-size: 1.5em; /* 18px */
|
||||
line-height: 2em; /* 36px */
|
||||
background: url('../img/photos_gold_32.gif') no-repeat 8px 50%; /* Thanks to Iconbuffet.com */
|
||||
color: #fff;
|
||||
}
|
||||
#body_wrap {
|
||||
width: 960px;
|
||||
margin: 0 auto;
|
||||
background: #fff url('../img/body_wrap_bg.gif') repeat-y;
|
||||
}
|
||||
#content {
|
||||
float: left;
|
||||
width: 632px;
|
||||
}
|
||||
#sidebar {
|
||||
float: right;
|
||||
width: 320px;
|
||||
}
|
||||
#footer {
|
||||
clear: both;
|
||||
background: #32342f;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
/*
|
||||
================================
|
||||
=SECTIONS
|
||||
================================ */
|
||||
/*
|
||||
----------------
|
||||
=HEADER
|
||||
---------------- */
|
||||
/*
|
||||
----------------
|
||||
=CONTENT
|
||||
---------------- */
|
||||
#content h2 {
|
||||
padding-left: 25px;
|
||||
}
|
||||
/*
|
||||
=gallery
|
||||
-------- */
|
||||
.gallery {
|
||||
min-height: 108px;
|
||||
padding: 0;
|
||||
margin: 18px 0;
|
||||
list-style: none;
|
||||
}
|
||||
* html .gallery {
|
||||
height: 108px; /* min-height for lte IE6 */
|
||||
}
|
||||
.gallery.active {
|
||||
background: #eee;
|
||||
}
|
||||
.gallery li {
|
||||
float: left;
|
||||
width: 160px;
|
||||
padding: 0 25px;
|
||||
margin: 0 0 8px;
|
||||
}
|
||||
.gallery img {
|
||||
display: block;
|
||||
padding: 7px;
|
||||
border: 1px solid #ccc;
|
||||
background: #fff;
|
||||
}
|
||||
.displayBox img {
|
||||
border: 25px solid #222;
|
||||
}
|
||||
/* img title */
|
||||
.gallery p {
|
||||
float: left;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
/* img toolbar */
|
||||
.gallery div {
|
||||
float: right;
|
||||
}
|
||||
.gallery div a {
|
||||
float: left;
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center;
|
||||
text-indent: -9999px; /* Phark revisited image replacement */
|
||||
}
|
||||
.gallery div a:focus {
|
||||
outline: 0;
|
||||
}
|
||||
.tb_supersize {
|
||||
background-image: url('../img/search_16.gif'); /* Thanks to Iconbuffet.com */
|
||||
}
|
||||
.tb_trash {
|
||||
background-image: url('../img/trash_16.gif'); /* Thanks to Iconbuffet.com */
|
||||
}
|
||||
|
||||
/*
|
||||
----------------
|
||||
=SIDEBAR
|
||||
---------------- */
|
||||
.box {
|
||||
margin: 18px;
|
||||
border: 1px solid #ccc;
|
||||
background: #fff;
|
||||
}
|
||||
.box h2 {
|
||||
padding: 0 8px;
|
||||
margin: 0;
|
||||
font-size: 1.5em;
|
||||
line-height: 2em;
|
||||
background: #525252 url('../img/header_bg.png') repeat-x bottom;
|
||||
color: #fff;
|
||||
}
|
||||
.box div {
|
||||
min-height: 128px;
|
||||
border: 2px solid #fff;
|
||||
}
|
||||
* html #sidebar .box div {
|
||||
height: 128px; /* min-height for lte IE6 */
|
||||
}
|
||||
#trash div.active {
|
||||
border-color: green;
|
||||
}
|
||||
#shred div.active {
|
||||
border-color: red;
|
||||
}
|
||||
#trash div img {
|
||||
float: left;
|
||||
margin: 4px;
|
||||
}
|
||||
|
||||
/*
|
||||
----------------
|
||||
=FOOTER
|
||||
---------------- */
|
||||
#footer p {
|
||||
margin: 0;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
================================
|
||||
=FLOAT CLEARING
|
||||
================================ */
|
||||
#body_wrap, ul.gallery, #trash div {
|
||||
display: inline-block;
|
||||
}
|
||||
#body_wrap:after, ul.gallery:after, #trash div:after {
|
||||
content: ".";
|
||||
display: block;
|
||||
height: 0;
|
||||
clear: both;
|
||||
visibility: hidden;
|
||||
}
|
||||
* html #body_wrap, * html ul.gallery, * html #trash div {
|
||||
height: 1%;
|
||||
}
|
||||
#body_wrap, ul.gallery, #trash div {
|
||||
display: block;
|
||||
}
|
||||
body {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
line-height: 1.5em;
|
||||
font-size: 75%; /* gives us 12px in most browsers */
|
||||
font-family: "Helvetica Neue", "Lucida Grande", Helvetica, Arial, Verdana, sans-serif;
|
||||
background: #aefe05 url('../img/side_top.jpg') repeat-x top; /* body background from ui.jquery.com */
|
||||
color: 222;
|
||||
}
|
||||
|
||||
/*
|
||||
================================
|
||||
=LAYOUT
|
||||
================================ */
|
||||
h1 {
|
||||
padding: 0 0 0 52px;
|
||||
margin: 0;
|
||||
font-size: 1.5em; /* 18px */
|
||||
line-height: 2em; /* 36px */
|
||||
background: url('../img/photos_gold_32.gif') no-repeat 8px 50%; /* Thanks to Iconbuffet.com */
|
||||
color: #fff;
|
||||
}
|
||||
#body_wrap {
|
||||
width: 960px;
|
||||
margin: 0 auto;
|
||||
background: #fff url('../img/body_wrap_bg.gif') repeat-y;
|
||||
}
|
||||
#content {
|
||||
float: left;
|
||||
width: 632px;
|
||||
}
|
||||
#sidebar {
|
||||
float: right;
|
||||
width: 320px;
|
||||
}
|
||||
#footer {
|
||||
clear: both;
|
||||
background: #32342f;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
/*
|
||||
================================
|
||||
=SECTIONS
|
||||
================================ */
|
||||
/*
|
||||
----------------
|
||||
=HEADER
|
||||
---------------- */
|
||||
/*
|
||||
----------------
|
||||
=CONTENT
|
||||
---------------- */
|
||||
#content h2 {
|
||||
padding-left: 25px;
|
||||
}
|
||||
/*
|
||||
=gallery
|
||||
-------- */
|
||||
.gallery {
|
||||
min-height: 108px;
|
||||
padding: 0;
|
||||
margin: 18px 0;
|
||||
list-style: none;
|
||||
}
|
||||
* html .gallery {
|
||||
height: 108px; /* min-height for lte IE6 */
|
||||
}
|
||||
.gallery.active {
|
||||
background: #eee;
|
||||
}
|
||||
.gallery li {
|
||||
float: left;
|
||||
width: 160px;
|
||||
padding: 0 25px;
|
||||
margin: 0 0 8px;
|
||||
}
|
||||
.gallery img {
|
||||
display: block;
|
||||
padding: 7px;
|
||||
border: 1px solid #ccc;
|
||||
background: #fff;
|
||||
}
|
||||
.displayBox img {
|
||||
border: 25px solid #222;
|
||||
}
|
||||
/* img title */
|
||||
.gallery p {
|
||||
float: left;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
/* img toolbar */
|
||||
.gallery div {
|
||||
float: right;
|
||||
}
|
||||
.gallery div a {
|
||||
float: left;
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center;
|
||||
text-indent: -9999px; /* Phark revisited image replacement */
|
||||
}
|
||||
.gallery div a:focus {
|
||||
outline: 0;
|
||||
}
|
||||
.tb_supersize {
|
||||
background-image: url('../img/search_16.gif'); /* Thanks to Iconbuffet.com */
|
||||
}
|
||||
.tb_trash {
|
||||
background-image: url('../img/trash_16.gif'); /* Thanks to Iconbuffet.com */
|
||||
}
|
||||
|
||||
/*
|
||||
----------------
|
||||
=SIDEBAR
|
||||
---------------- */
|
||||
.box {
|
||||
margin: 18px;
|
||||
border: 1px solid #ccc;
|
||||
background: #fff;
|
||||
}
|
||||
.box h2 {
|
||||
padding: 0 8px;
|
||||
margin: 0;
|
||||
font-size: 1.5em;
|
||||
line-height: 2em;
|
||||
background: #525252 url('../img/header_bg.png') repeat-x bottom;
|
||||
color: #fff;
|
||||
}
|
||||
.box div {
|
||||
min-height: 128px;
|
||||
border: 2px solid #fff;
|
||||
}
|
||||
* html #sidebar .box div {
|
||||
height: 128px; /* min-height for lte IE6 */
|
||||
}
|
||||
#trash div.active {
|
||||
border-color: green;
|
||||
}
|
||||
#shred div.active {
|
||||
border-color: red;
|
||||
}
|
||||
#trash div img {
|
||||
float: left;
|
||||
margin: 4px;
|
||||
}
|
||||
|
||||
/*
|
||||
----------------
|
||||
=FOOTER
|
||||
---------------- */
|
||||
#footer p {
|
||||
margin: 0;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
================================
|
||||
=FLOAT CLEARING
|
||||
================================ */
|
||||
#body_wrap, ul.gallery, #trash div {
|
||||
display: inline-block;
|
||||
}
|
||||
#body_wrap:after, ul.gallery:after, #trash div:after {
|
||||
content: ".";
|
||||
display: block;
|
||||
height: 0;
|
||||
clear: both;
|
||||
visibility: hidden;
|
||||
}
|
||||
* html #body_wrap, * html ul.gallery, * html #trash div {
|
||||
height: 1%;
|
||||
}
|
||||
#body_wrap, ul.gallery, #trash div {
|
||||
display: block;
|
||||
}
|
||||
|
||||
@@ -1,185 +1,185 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
|
||||
<title>Slider Gallery</title>
|
||||
<style type="text/css" media="screen">
|
||||
<!--
|
||||
body {
|
||||
padding: 0;
|
||||
font: 1em "Trebuchet MS", verdana, arial, sans-serif;
|
||||
font-size: 100%;
|
||||
background-color: #212121;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
h1 {
|
||||
margin-bottom: 2px;
|
||||
}
|
||||
|
||||
#container {
|
||||
background-color: #fff;
|
||||
width: 580px;
|
||||
margin: 15px auto;
|
||||
padding: 50px;
|
||||
}
|
||||
|
||||
/* slider specific CSS */
|
||||
.sliderGallery {
|
||||
background: url(images/productbrowser_background_20070622.jpg) no-repeat;
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
padding: 10px;
|
||||
height: 160px;
|
||||
width: 560px;
|
||||
}
|
||||
|
||||
.sliderGallery UL {
|
||||
position: absolute;
|
||||
list-style: none;
|
||||
overflow: none;
|
||||
white-space: nowrap;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.sliderGallery UL LI {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
.slider {
|
||||
width: 542px;
|
||||
height: 17px;
|
||||
margin-top: 140px;
|
||||
margin-left: 5px;
|
||||
padding: 1px;
|
||||
position: relative;
|
||||
background: url(images/productbrowser_scrollbar_20070622.png) no-repeat;
|
||||
}
|
||||
|
||||
.handle {
|
||||
position: absolute;
|
||||
cursor: move;
|
||||
height: 17px;
|
||||
width: 181px;
|
||||
top: 0;
|
||||
background: url(images/productbrowser_scroller_20080115.png) no-repeat;
|
||||
z-index: 100;
|
||||
}
|
||||
|
||||
.slider span {
|
||||
color: #bbb;
|
||||
font-size: 80%;
|
||||
cursor: pointer;
|
||||
position: absolute;
|
||||
z-index: 110;
|
||||
top: 3px;
|
||||
}
|
||||
|
||||
.slider .slider-lbl1 {
|
||||
left: 50px;
|
||||
}
|
||||
|
||||
.slider .slider-lbl2 {
|
||||
left: 107px;
|
||||
}
|
||||
|
||||
.slider .slider-lbl3 {
|
||||
left: 156px;
|
||||
}
|
||||
|
||||
.slider .slider-lbl4 {
|
||||
left: 280px;
|
||||
}
|
||||
|
||||
.slider .slider-lbl5 {
|
||||
left: 455px;
|
||||
}
|
||||
-->
|
||||
</style>
|
||||
|
||||
<script type="text/javascript" src="../../../../jquery/jquery-1.2.6.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.slider.js"></script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8">
|
||||
/**
|
||||
* Note that we have to use window.onload because $(document).ready() fires before images are loaded
|
||||
* and ul.innerWidth() - container.outerWidth(); doesn't give the correct width because the width
|
||||
* of the UL hasn't expanded out until the images have finished rendering.
|
||||
*/
|
||||
window.onload = function () {
|
||||
var container = $('div.sliderGallery');
|
||||
var ul = $('ul', container);
|
||||
|
||||
var itemsWidth = ul.innerWidth() - container.outerWidth();
|
||||
|
||||
$('.slider', container).slider({
|
||||
min: 0,
|
||||
max: itemsWidth,
|
||||
handle: '.handle',
|
||||
stop: function (event, ui) {
|
||||
ul.animate({'left' : ui.value * -1}, 500);
|
||||
},
|
||||
slide: function (event, ui) {
|
||||
ul.css('left', ui.value * -1);
|
||||
}
|
||||
});
|
||||
};
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="container">
|
||||
<h1>Slider Gallery</h1>
|
||||
<p>This shows a demonstration of a slider widget from the jQuery UI library used to create the same effect used on <a href="http://www.apple.com/mac/">Apple's web site</a>.</p>
|
||||
<p><a href="http://jqueryfordesigners.com/slider-gallery">Read the article, and see the screencast this demonstration relates to</a></p>
|
||||
|
||||
<div class="sliderGallery">
|
||||
<ul>
|
||||
<li><img class="pb-airportexpress" src="images/pb_airport_express.jpg" /></li>
|
||||
<li><img src="images/pb_airport_extreme.jpg" /></li>
|
||||
<li><img src="images/pb_timecapsule_20080115.jpg" /></li>
|
||||
<li><img src="images/pb_keyboards20070807.jpg" /></li>
|
||||
<li><img src="images/pb_mighty_mouse.jpg" /></li>
|
||||
<li><img src="images/pb_cinema_display20071026.jpg" /></li>
|
||||
<li><img src="images/pb_mac_pro_20070622.jpg" /></li>
|
||||
|
||||
<li><img class="pb-macmini" src="images/pb_mac_mini.jpg" /></li>
|
||||
<li><img src="images/pb_macbook20071026.jpg" /></li>
|
||||
<li><img class="pb-macbookair" src="images/pb_macbookair_20080115.jpg" /></li>
|
||||
<li><img class="pb-macbookpro" src="images/pb_macbook_pro20071026.jpg" /></li>
|
||||
<li><img class="pb-imac" src="images/pb_imac20071026.jpg" /></li>
|
||||
<li><img src="images/pb_macosx_20080115.jpg" /></li>
|
||||
<li><img src="images/pb_ilife_20080115.jpg" /></li>
|
||||
<li><img src="images/pb_dot_mac_20080115.jpg" /></li>
|
||||
<li><img src="images/pb_iwork_20080115.jpg" /></li>
|
||||
|
||||
<li><img src="images/pb_quicktime.jpg" /></li>
|
||||
<li><img src="images/pb_aperture20080212.jpg" /></li>
|
||||
<li><img src="images/pb_final_cut_studio2_20080115.jpg" /></li>
|
||||
<li><img src="images/pb_final_cut_express_20080115.jpg" /></li>
|
||||
<li><img src="images/pb_logic_studio_20080115.jpg" /></li>
|
||||
<li><img src="images/pb_logic_express_20080115.jpg" /></li>
|
||||
<li><img src="images/pb_shake_20080115.jpg" /></li>
|
||||
<li><img src="images/pb_apple_remote_desktop_20080115.jpg" /></li>
|
||||
<li><img src="images/pb_xserve.jpg" /></li>
|
||||
|
||||
<li><img src="images/pb_xserve_raid.jpg" /></li>
|
||||
<li><img class="pb-xsan" src="images/pb_xsan_20080115.jpg" /></li>
|
||||
<li><img class="pb-macosxserver" src="images/pb_macosx_server20071016.jpg" /></li>
|
||||
</ul>
|
||||
<div class="slider">
|
||||
<div class="handle"></div>
|
||||
<span class="slider-lbl1">Wi-Fi</span>
|
||||
<span class="slider-lbl3">Macs</span>
|
||||
<span class="slider-lbl4">Applications</span>
|
||||
<span class="slider-lbl5">Servers</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
|
||||
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
|
||||
<title>Slider Gallery</title>
|
||||
<style type="text/css" media="screen">
|
||||
<!--
|
||||
body {
|
||||
padding: 0;
|
||||
font: 1em "Trebuchet MS", verdana, arial, sans-serif;
|
||||
font-size: 100%;
|
||||
background-color: #212121;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
h1 {
|
||||
margin-bottom: 2px;
|
||||
}
|
||||
|
||||
#container {
|
||||
background-color: #fff;
|
||||
width: 580px;
|
||||
margin: 15px auto;
|
||||
padding: 50px;
|
||||
}
|
||||
|
||||
/* slider specific CSS */
|
||||
.sliderGallery {
|
||||
background: url(images/productbrowser_background_20070622.jpg) no-repeat;
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
padding: 10px;
|
||||
height: 160px;
|
||||
width: 560px;
|
||||
}
|
||||
|
||||
.sliderGallery UL {
|
||||
position: absolute;
|
||||
list-style: none;
|
||||
overflow: none;
|
||||
white-space: nowrap;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.sliderGallery UL LI {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
.slider {
|
||||
width: 542px;
|
||||
height: 17px;
|
||||
margin-top: 140px;
|
||||
margin-left: 5px;
|
||||
padding: 1px;
|
||||
position: relative;
|
||||
background: url(images/productbrowser_scrollbar_20070622.png) no-repeat;
|
||||
}
|
||||
|
||||
.handle {
|
||||
position: absolute;
|
||||
cursor: move;
|
||||
height: 17px;
|
||||
width: 181px;
|
||||
top: 0;
|
||||
background: url(images/productbrowser_scroller_20080115.png) no-repeat;
|
||||
z-index: 100;
|
||||
}
|
||||
|
||||
.slider span {
|
||||
color: #bbb;
|
||||
font-size: 80%;
|
||||
cursor: pointer;
|
||||
position: absolute;
|
||||
z-index: 110;
|
||||
top: 3px;
|
||||
}
|
||||
|
||||
.slider .slider-lbl1 {
|
||||
left: 50px;
|
||||
}
|
||||
|
||||
.slider .slider-lbl2 {
|
||||
left: 107px;
|
||||
}
|
||||
|
||||
.slider .slider-lbl3 {
|
||||
left: 156px;
|
||||
}
|
||||
|
||||
.slider .slider-lbl4 {
|
||||
left: 280px;
|
||||
}
|
||||
|
||||
.slider .slider-lbl5 {
|
||||
left: 455px;
|
||||
}
|
||||
-->
|
||||
</style>
|
||||
|
||||
<script type="text/javascript" src="../../../../jquery/jquery-1.2.6.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.slider.js"></script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8">
|
||||
/**
|
||||
* Note that we have to use window.onload because $(document).ready() fires before images are loaded
|
||||
* and ul.innerWidth() - container.outerWidth(); doesn't give the correct width because the width
|
||||
* of the UL hasn't expanded out until the images have finished rendering.
|
||||
*/
|
||||
window.onload = function () {
|
||||
var container = $('div.sliderGallery');
|
||||
var ul = $('ul', container);
|
||||
|
||||
var itemsWidth = ul.innerWidth() - container.outerWidth();
|
||||
|
||||
$('.slider', container).slider({
|
||||
min: 0,
|
||||
max: itemsWidth,
|
||||
handle: '.handle',
|
||||
stop: function (event, ui) {
|
||||
ul.animate({'left' : ui.value * -1}, 500);
|
||||
},
|
||||
slide: function (event, ui) {
|
||||
ul.css('left', ui.value * -1);
|
||||
}
|
||||
});
|
||||
};
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="container">
|
||||
<h1>Slider Gallery</h1>
|
||||
<p>This shows a demonstration of a slider widget from the jQuery UI library used to create the same effect used on <a href="http://www.apple.com/mac/">Apple's web site</a>.</p>
|
||||
<p><a href="http://jqueryfordesigners.com/slider-gallery">Read the article, and see the screencast this demonstration relates to</a></p>
|
||||
|
||||
<div class="sliderGallery">
|
||||
<ul>
|
||||
<li><img class="pb-airportexpress" src="images/pb_airport_express.jpg" /></li>
|
||||
<li><img src="images/pb_airport_extreme.jpg" /></li>
|
||||
<li><img src="images/pb_timecapsule_20080115.jpg" /></li>
|
||||
<li><img src="images/pb_keyboards20070807.jpg" /></li>
|
||||
<li><img src="images/pb_mighty_mouse.jpg" /></li>
|
||||
<li><img src="images/pb_cinema_display20071026.jpg" /></li>
|
||||
<li><img src="images/pb_mac_pro_20070622.jpg" /></li>
|
||||
|
||||
<li><img class="pb-macmini" src="images/pb_mac_mini.jpg" /></li>
|
||||
<li><img src="images/pb_macbook20071026.jpg" /></li>
|
||||
<li><img class="pb-macbookair" src="images/pb_macbookair_20080115.jpg" /></li>
|
||||
<li><img class="pb-macbookpro" src="images/pb_macbook_pro20071026.jpg" /></li>
|
||||
<li><img class="pb-imac" src="images/pb_imac20071026.jpg" /></li>
|
||||
<li><img src="images/pb_macosx_20080115.jpg" /></li>
|
||||
<li><img src="images/pb_ilife_20080115.jpg" /></li>
|
||||
<li><img src="images/pb_dot_mac_20080115.jpg" /></li>
|
||||
<li><img src="images/pb_iwork_20080115.jpg" /></li>
|
||||
|
||||
<li><img src="images/pb_quicktime.jpg" /></li>
|
||||
<li><img src="images/pb_aperture20080212.jpg" /></li>
|
||||
<li><img src="images/pb_final_cut_studio2_20080115.jpg" /></li>
|
||||
<li><img src="images/pb_final_cut_express_20080115.jpg" /></li>
|
||||
<li><img src="images/pb_logic_studio_20080115.jpg" /></li>
|
||||
<li><img src="images/pb_logic_express_20080115.jpg" /></li>
|
||||
<li><img src="images/pb_shake_20080115.jpg" /></li>
|
||||
<li><img src="images/pb_apple_remote_desktop_20080115.jpg" /></li>
|
||||
<li><img src="images/pb_xserve.jpg" /></li>
|
||||
|
||||
<li><img src="images/pb_xserve_raid.jpg" /></li>
|
||||
<li><img class="pb-xsan" src="images/pb_xsan_20080115.jpg" /></li>
|
||||
<li><img class="pb-macosxserver" src="images/pb_macosx_server20071016.jpg" /></li>
|
||||
</ul>
|
||||
<div class="slider">
|
||||
<div class="handle"></div>
|
||||
<span class="slider-lbl1">Wi-Fi</span>
|
||||
<span class="slider-lbl3">Macs</span>
|
||||
<span class="slider-lbl4">Applications</span>
|
||||
<span class="slider-lbl5">Servers</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,149 +1,149 @@
|
||||
/* --------------------------------------------------------------
|
||||
|
||||
jQuery UI: Demo Viewer
|
||||
|
||||
-------------------------------------------------------------- */
|
||||
|
||||
|
||||
/*************************************/
|
||||
/* Blueprint: reset.css */
|
||||
|
||||
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,
|
||||
dl, dt, dd, ol,
|
||||
fieldset, form, label, legend,
|
||||
table, caption, tbody, tfoot, thead, tr, th, td {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: 0;
|
||||
outline: 0;
|
||||
font-weight: inherit;
|
||||
font-style: inherit;
|
||||
font-size: 100%;
|
||||
font-family: inherit;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
label {
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
/* Remember to define focus styles! */
|
||||
:focus {
|
||||
outline: 0;
|
||||
}
|
||||
body {
|
||||
line-height: 1;
|
||||
color: black;
|
||||
background: white;
|
||||
font-family: Arial,Sans-serif; font-size: 0.9em;
|
||||
background-color: white;
|
||||
overflow: hidden;
|
||||
}
|
||||
ol, ul {
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
/* Tables still need 'cellspacing="0"' in the markup. */
|
||||
table {
|
||||
border-collapse: separate;
|
||||
border-spacing: 0;
|
||||
}
|
||||
caption, th, td {
|
||||
text-align: left;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
/* Remove possible quote marks (") from <q>, <blockquote>. */
|
||||
blockquote:before, blockquote:after,
|
||||
q:before, q:after {
|
||||
content: "";
|
||||
}
|
||||
blockquote, q {
|
||||
quotes: "" "";
|
||||
}
|
||||
|
||||
/*************************************/
|
||||
/* Viewer: Layout */
|
||||
|
||||
#wrapper {
|
||||
background: #e1e7f2 url(../images/bg_gradient.gif) repeat-x;
|
||||
}
|
||||
#header {
|
||||
padding: 10px;
|
||||
background: #67A7E3; color: #fff;
|
||||
position: relative;
|
||||
}
|
||||
#container {
|
||||
height: 500px;
|
||||
}
|
||||
#container td {
|
||||
overflow: hidden;
|
||||
}
|
||||
#container td div {
|
||||
overflow: hidden;
|
||||
padding: 0 15px 0 10px;
|
||||
background: #fff;
|
||||
height:475px;
|
||||
font-size: 90%;
|
||||
}
|
||||
#container .ui-split-side-box {
|
||||
width: 200px;
|
||||
}
|
||||
#container .ui-split-side {
|
||||
overflow: hidden;
|
||||
}
|
||||
#container .ui-split-side ul {
|
||||
margin: 0; padding: 0; padding-top: 3px;
|
||||
}
|
||||
#container .ui-split-side li {
|
||||
margin: 0; padding: 0; border: 0; outline: 0;
|
||||
list-style: none;
|
||||
}
|
||||
#container .ui-split-side li a {
|
||||
height: 15px;
|
||||
display:block;
|
||||
padding: 3px 3px 3px 12px;
|
||||
border-bottom: 1px solid #E8EEF7;
|
||||
color: #000;
|
||||
font-size: 90%;
|
||||
text-decoration: none;
|
||||
}
|
||||
#container .ui-split-side li a:hover {
|
||||
background: #E8EEF7;
|
||||
border-color: #C3D9FF;
|
||||
}
|
||||
#container .ui-split-main-box {
|
||||
|
||||
}
|
||||
|
||||
#container .ui-resizable-e {
|
||||
width: 10px; height: 475px;
|
||||
background:#e1e7f2 url(../images/splitpane_handle-ew.gif) no-repeat scroll 75% 50% !important;
|
||||
cursor:col-resize !important;
|
||||
border-left: #bbb 1px solid;
|
||||
padding: 3px;
|
||||
}
|
||||
#container .ui-resizable-n {
|
||||
height: 10px;
|
||||
background:#e1e7f2 url(../images/splitpane_handle-sn.gif) no-repeat scroll 50% 55% !important;
|
||||
border-top: #bbb 1px solid;
|
||||
padding: 3px;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.ui-toolbar-item-hide-icon {
|
||||
padding-left: 16px; height: 16px;
|
||||
background-image: url(../images/icons_2.png);
|
||||
background-repeat: no-repeat; margin: 0 2px;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.ui-toolbar-item-hide-icon { background-position: -64px 50%; }
|
||||
|
||||
.proxy { border: 1px dashed #000; };
|
||||
|
||||
/* --------------------------------------------------------------
|
||||
|
||||
jQuery UI: Demo Viewer
|
||||
|
||||
-------------------------------------------------------------- */
|
||||
|
||||
|
||||
/*************************************/
|
||||
/* Blueprint: reset.css */
|
||||
|
||||
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,
|
||||
dl, dt, dd, ol,
|
||||
fieldset, form, label, legend,
|
||||
table, caption, tbody, tfoot, thead, tr, th, td {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: 0;
|
||||
outline: 0;
|
||||
font-weight: inherit;
|
||||
font-style: inherit;
|
||||
font-size: 100%;
|
||||
font-family: inherit;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
label {
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
/* Remember to define focus styles! */
|
||||
:focus {
|
||||
outline: 0;
|
||||
}
|
||||
body {
|
||||
line-height: 1;
|
||||
color: black;
|
||||
background: white;
|
||||
font-family: Arial,Sans-serif; font-size: 0.9em;
|
||||
background-color: white;
|
||||
overflow: hidden;
|
||||
}
|
||||
ol, ul {
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
/* Tables still need 'cellspacing="0"' in the markup. */
|
||||
table {
|
||||
border-collapse: separate;
|
||||
border-spacing: 0;
|
||||
}
|
||||
caption, th, td {
|
||||
text-align: left;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
/* Remove possible quote marks (") from <q>, <blockquote>. */
|
||||
blockquote:before, blockquote:after,
|
||||
q:before, q:after {
|
||||
content: "";
|
||||
}
|
||||
blockquote, q {
|
||||
quotes: "" "";
|
||||
}
|
||||
|
||||
/*************************************/
|
||||
/* Viewer: Layout */
|
||||
|
||||
#wrapper {
|
||||
background: #e1e7f2 url(../images/bg_gradient.gif) repeat-x;
|
||||
}
|
||||
#header {
|
||||
padding: 10px;
|
||||
background: #67A7E3; color: #fff;
|
||||
position: relative;
|
||||
}
|
||||
#container {
|
||||
height: 500px;
|
||||
}
|
||||
#container td {
|
||||
overflow: hidden;
|
||||
}
|
||||
#container td div {
|
||||
overflow: hidden;
|
||||
padding: 0 15px 0 10px;
|
||||
background: #fff;
|
||||
height:475px;
|
||||
font-size: 90%;
|
||||
}
|
||||
#container .ui-split-side-box {
|
||||
width: 200px;
|
||||
}
|
||||
#container .ui-split-side {
|
||||
overflow: hidden;
|
||||
}
|
||||
#container .ui-split-side ul {
|
||||
margin: 0; padding: 0; padding-top: 3px;
|
||||
}
|
||||
#container .ui-split-side li {
|
||||
margin: 0; padding: 0; border: 0; outline: 0;
|
||||
list-style: none;
|
||||
}
|
||||
#container .ui-split-side li a {
|
||||
height: 15px;
|
||||
display:block;
|
||||
padding: 3px 3px 3px 12px;
|
||||
border-bottom: 1px solid #E8EEF7;
|
||||
color: #000;
|
||||
font-size: 90%;
|
||||
text-decoration: none;
|
||||
}
|
||||
#container .ui-split-side li a:hover {
|
||||
background: #E8EEF7;
|
||||
border-color: #C3D9FF;
|
||||
}
|
||||
#container .ui-split-main-box {
|
||||
|
||||
}
|
||||
|
||||
#container .ui-resizable-e {
|
||||
width: 10px; height: 475px;
|
||||
background:#e1e7f2 url(../images/splitpane_handle-ew.gif) no-repeat scroll 75% 50% !important;
|
||||
cursor:col-resize !important;
|
||||
border-left: #bbb 1px solid;
|
||||
padding: 3px;
|
||||
}
|
||||
#container .ui-resizable-n {
|
||||
height: 10px;
|
||||
background:#e1e7f2 url(../images/splitpane_handle-sn.gif) no-repeat scroll 50% 55% !important;
|
||||
border-top: #bbb 1px solid;
|
||||
padding: 3px;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.ui-toolbar-item-hide-icon {
|
||||
padding-left: 16px; height: 16px;
|
||||
background-image: url(../images/icons_2.png);
|
||||
background-repeat: no-repeat; margin: 0 2px;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.ui-toolbar-item-hide-icon { background-position: -64px 50%; }
|
||||
|
||||
.proxy { border: 1px dashed #000; };
|
||||
|
||||
|
||||
@@ -1,96 +1,96 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Language" content="en" />
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>jQuery UI: SplitPane</title>
|
||||
|
||||
<!-- jQuery -->
|
||||
<script type="text/javascript" src="../../../../jquery/jquery-1.2.6.js"></script>
|
||||
|
||||
<!-- jQuery UI -->
|
||||
<script type="text/javascript" src="../../../source/ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.resizable.js"></script>
|
||||
|
||||
<script src="js/demo.js" type="text/javascript" charset="utf-8"></script>
|
||||
|
||||
<style type="text/css">
|
||||
@import "css/demo.css";
|
||||
</style>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div id="wrapper">
|
||||
<div id="header">
|
||||
<span class="ui-toolbar-item-hide-icon"></span> <span>jQuery UI Resizable SplitPanel</span>
|
||||
</div>
|
||||
<table id="container" cellpadding="0" cellspacing="0" border="0">
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="ui-split-side-box">
|
||||
<div class="ui-split-side">
|
||||
<ul id="component-links">
|
||||
<li><a href="#ui.accordion" title="Goto Accordion's Component Page">Accordion</a></li>
|
||||
<li><a href="#ui.dialog" title="Goto Dialog's Component Page">Dialog</a></li>
|
||||
<li><a href="#ui.draggable" title="Goto Draggable's Component Page">Draggable</a></li>
|
||||
<li><a href="#ui.droppable" title="Goto Droppable's Component Page">Droppable</a></li>
|
||||
<li><a href="#ui.resizable" title="Goto Resizable's Component Page">Resizable</a></li>
|
||||
<li><a href="#ui.selectable" title="Goto Selectable's Component Page">Selectable</a></li>
|
||||
<li><a href="#ui.sortable" title="Goto Sortable's Component Page">Sortable</a></li>
|
||||
<li><a href="#ui.tabs" title="Goto Tabs Component Page">Tabs</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</td>
|
||||
|
||||
|
||||
<td class="ui-split-main-box">
|
||||
<div class="ui-split-main1">
|
||||
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Vestibulum commodo mollis tortor. Ut dapibus turpis consequat quam. Nulla lacinia. Donec nunc. Donec sollicitudin. Vivamus orci. Pellentesque tempus velit vitae odio. Maecenas enim arcu, volutpat ac, viverra id, bibendum eu, felis. Vestibulum imperdiet arcu. Ut nisi. Cras vel lectus consectetuer mauris luctus ultrices. Duis fringilla pellentesque sapien.
|
||||
<br><br>
|
||||
Cras tristique justo vel metus. Pellentesque dolor libero, ullamcorper ac, vehicula eget, porttitor at, dui. Ut a nibh. Nunc sit amet turpis. Aenean diam dui, consequat vel, scelerisque id, accumsan a, lectus. Duis ultrices, enim vitae pharetra tincidunt, elit nunc sollicitudin felis, dapibus pellentesque urna velit ut quam. Donec scelerisque vehicula dolor. Suspendisse lectus dui, posuere sit amet, sagittis nec, vulputate in, libero. Morbi tempus sagittis est. Phasellus in nisi. Sed a ligula. Vivamus condimentum quam non nibh. Fusce pellentesque, neque ac scelerisque luctus, leo elit bibendum elit, in rutrum leo erat tristique felis. Etiam consequat fringilla eros. Nullam neque. Aenean mollis, odio at consectetuer sollicitudin, tortor lorem facilisis nunc, sit amet condimentum lectus libero convallis dolor. Vivamus quis risus.
|
||||
|
||||
</div>
|
||||
</td>
|
||||
|
||||
<td class="ui-split-main-box">
|
||||
<div class="ui-split-main2">
|
||||
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Vestibulum commodo mollis tortor. Ut dapibus turpis consequat quam. Nulla lacinia. Donec nunc. Donec sollicitudin. Vivamus orci. Pellentesque tempus velit vitae odio. Maecenas enim arcu, volutpat ac, viverra id, bibendum eu, felis. Vestibulum imperdiet arcu. Ut nisi. Cras vel lectus consectetuer mauris luctus ultrices. Duis fringilla pellentesque sapien.
|
||||
<br><br>
|
||||
Cras tristique justo vel metus. Pellentesque dolor libero, ullamcorper ac, vehicula eget, porttitor at, dui. Ut a nibh. Nunc sit amet turpis. Aenean diam dui, consequat vel, scelerisque id, accumsan a, lectus. Duis ultrices, enim vitae pharetra tincidunt, elit nunc sollicitudin felis, dapibus pellentesque urna velit ut quam. Donec scelerisque vehicula dolor. Suspendisse lectus dui, posuere sit amet, sagittis nec, vulputate in, libero. Morbi tempus sagittis est. Phasellus in nisi. Sed a ligula. Vivamus condimentum quam non nibh. Fusce pellentesque, neque ac scelerisque luctus, leo elit bibendum elit, in rutrum leo erat tristique felis. Etiam consequat fringilla eros. Nullam neque. Aenean mollis, odio at consectetuer sollicitudin, tortor lorem facilisis nunc, sit amet condimentum lectus libero convallis dolor. Vivamus quis risus.
|
||||
</div>
|
||||
</td>
|
||||
|
||||
<td class="ui-split-main-box">
|
||||
<div class="ui-split-main3">
|
||||
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Vestibulum commodo mollis tortor. Ut dapibus turpis consequat quam. Nulla lacinia. Donec nunc. Donec sollicitudin. Vivamus orci. Pellentesque tempus velit vitae odio. Maecenas enim arcu, volutpat ac, viverra id, bibendum eu, felis. Vestibulum imperdiet arcu. Ut nisi. Cras vel lectus consectetuer mauris luctus ultrices. Duis fringilla pellentesque sapien.
|
||||
<br><br>
|
||||
Cras tristique justo vel metus. Pellentesque dolor libero, ullamcorper ac, vehicula eget, porttitor at, dui. Ut a nibh. Nunc sit amet turpis. Aenean diam dui, consequat vel, scelerisque id, accumsan a, lectus. Duis ultrices, enim vitae pharetra tincidunt, elit nunc sollicitudin felis, dapibus pellentesque urna velit ut quam. Donec scelerisque vehicula dolor. Suspendisse lectus dui, posuere sit amet, sagittis nec, vulputate in, libero. Morbi tempus sagittis est. Phasellus in nisi. Sed a ligula. Vivamus condimentum quam non nibh. Fusce pellentesque, neque ac scelerisque luctus, leo elit bibendum elit, in rutrum leo erat tristique felis. Etiam consequat fringilla eros. Nullam neque. Aenean mollis, odio at consectetuer sollicitudin, tortor lorem facilisis nunc, sit amet condimentum lectus libero convallis dolor. Vivamus quis risus.
|
||||
</div>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
|
||||
$('div.ui-split-main1, div.ui-split-main2').resizable({
|
||||
handles: 'e',
|
||||
minWidth: 200,
|
||||
maxWidth: 800
|
||||
});
|
||||
|
||||
$('div.ui-split-side').resizable({
|
||||
handles: 'e',
|
||||
proxy: 'proxy',
|
||||
minWidth: 200,
|
||||
maxWidth: 300
|
||||
});
|
||||
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Language" content="en" />
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>jQuery UI: SplitPane</title>
|
||||
|
||||
<!-- jQuery -->
|
||||
<script type="text/javascript" src="../../../../jquery/jquery-1.2.6.js"></script>
|
||||
|
||||
<!-- jQuery UI -->
|
||||
<script type="text/javascript" src="../../../source/ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../../source/ui.resizable.js"></script>
|
||||
|
||||
<script src="js/demo.js" type="text/javascript" charset="utf-8"></script>
|
||||
|
||||
<style type="text/css">
|
||||
@import "css/demo.css";
|
||||
</style>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div id="wrapper">
|
||||
<div id="header">
|
||||
<span class="ui-toolbar-item-hide-icon"></span> <span>jQuery UI Resizable SplitPanel</span>
|
||||
</div>
|
||||
<table id="container" cellpadding="0" cellspacing="0" border="0">
|
||||
|
||||
<tr>
|
||||
|
||||
<td class="ui-split-side-box">
|
||||
<div class="ui-split-side">
|
||||
<ul id="component-links">
|
||||
<li><a href="#ui.accordion" title="Goto Accordion's Component Page">Accordion</a></li>
|
||||
<li><a href="#ui.dialog" title="Goto Dialog's Component Page">Dialog</a></li>
|
||||
<li><a href="#ui.draggable" title="Goto Draggable's Component Page">Draggable</a></li>
|
||||
<li><a href="#ui.droppable" title="Goto Droppable's Component Page">Droppable</a></li>
|
||||
<li><a href="#ui.resizable" title="Goto Resizable's Component Page">Resizable</a></li>
|
||||
<li><a href="#ui.selectable" title="Goto Selectable's Component Page">Selectable</a></li>
|
||||
<li><a href="#ui.sortable" title="Goto Sortable's Component Page">Sortable</a></li>
|
||||
<li><a href="#ui.tabs" title="Goto Tabs Component Page">Tabs</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</td>
|
||||
|
||||
|
||||
<td class="ui-split-main-box">
|
||||
<div class="ui-split-main1">
|
||||
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Vestibulum commodo mollis tortor. Ut dapibus turpis consequat quam. Nulla lacinia. Donec nunc. Donec sollicitudin. Vivamus orci. Pellentesque tempus velit vitae odio. Maecenas enim arcu, volutpat ac, viverra id, bibendum eu, felis. Vestibulum imperdiet arcu. Ut nisi. Cras vel lectus consectetuer mauris luctus ultrices. Duis fringilla pellentesque sapien.
|
||||
<br><br>
|
||||
Cras tristique justo vel metus. Pellentesque dolor libero, ullamcorper ac, vehicula eget, porttitor at, dui. Ut a nibh. Nunc sit amet turpis. Aenean diam dui, consequat vel, scelerisque id, accumsan a, lectus. Duis ultrices, enim vitae pharetra tincidunt, elit nunc sollicitudin felis, dapibus pellentesque urna velit ut quam. Donec scelerisque vehicula dolor. Suspendisse lectus dui, posuere sit amet, sagittis nec, vulputate in, libero. Morbi tempus sagittis est. Phasellus in nisi. Sed a ligula. Vivamus condimentum quam non nibh. Fusce pellentesque, neque ac scelerisque luctus, leo elit bibendum elit, in rutrum leo erat tristique felis. Etiam consequat fringilla eros. Nullam neque. Aenean mollis, odio at consectetuer sollicitudin, tortor lorem facilisis nunc, sit amet condimentum lectus libero convallis dolor. Vivamus quis risus.
|
||||
|
||||
</div>
|
||||
</td>
|
||||
|
||||
<td class="ui-split-main-box">
|
||||
<div class="ui-split-main2">
|
||||
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Vestibulum commodo mollis tortor. Ut dapibus turpis consequat quam. Nulla lacinia. Donec nunc. Donec sollicitudin. Vivamus orci. Pellentesque tempus velit vitae odio. Maecenas enim arcu, volutpat ac, viverra id, bibendum eu, felis. Vestibulum imperdiet arcu. Ut nisi. Cras vel lectus consectetuer mauris luctus ultrices. Duis fringilla pellentesque sapien.
|
||||
<br><br>
|
||||
Cras tristique justo vel metus. Pellentesque dolor libero, ullamcorper ac, vehicula eget, porttitor at, dui. Ut a nibh. Nunc sit amet turpis. Aenean diam dui, consequat vel, scelerisque id, accumsan a, lectus. Duis ultrices, enim vitae pharetra tincidunt, elit nunc sollicitudin felis, dapibus pellentesque urna velit ut quam. Donec scelerisque vehicula dolor. Suspendisse lectus dui, posuere sit amet, sagittis nec, vulputate in, libero. Morbi tempus sagittis est. Phasellus in nisi. Sed a ligula. Vivamus condimentum quam non nibh. Fusce pellentesque, neque ac scelerisque luctus, leo elit bibendum elit, in rutrum leo erat tristique felis. Etiam consequat fringilla eros. Nullam neque. Aenean mollis, odio at consectetuer sollicitudin, tortor lorem facilisis nunc, sit amet condimentum lectus libero convallis dolor. Vivamus quis risus.
|
||||
</div>
|
||||
</td>
|
||||
|
||||
<td class="ui-split-main-box">
|
||||
<div class="ui-split-main3">
|
||||
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Vestibulum commodo mollis tortor. Ut dapibus turpis consequat quam. Nulla lacinia. Donec nunc. Donec sollicitudin. Vivamus orci. Pellentesque tempus velit vitae odio. Maecenas enim arcu, volutpat ac, viverra id, bibendum eu, felis. Vestibulum imperdiet arcu. Ut nisi. Cras vel lectus consectetuer mauris luctus ultrices. Duis fringilla pellentesque sapien.
|
||||
<br><br>
|
||||
Cras tristique justo vel metus. Pellentesque dolor libero, ullamcorper ac, vehicula eget, porttitor at, dui. Ut a nibh. Nunc sit amet turpis. Aenean diam dui, consequat vel, scelerisque id, accumsan a, lectus. Duis ultrices, enim vitae pharetra tincidunt, elit nunc sollicitudin felis, dapibus pellentesque urna velit ut quam. Donec scelerisque vehicula dolor. Suspendisse lectus dui, posuere sit amet, sagittis nec, vulputate in, libero. Morbi tempus sagittis est. Phasellus in nisi. Sed a ligula. Vivamus condimentum quam non nibh. Fusce pellentesque, neque ac scelerisque luctus, leo elit bibendum elit, in rutrum leo erat tristique felis. Etiam consequat fringilla eros. Nullam neque. Aenean mollis, odio at consectetuer sollicitudin, tortor lorem facilisis nunc, sit amet condimentum lectus libero convallis dolor. Vivamus quis risus.
|
||||
</div>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
|
||||
$('div.ui-split-main1, div.ui-split-main2').resizable({
|
||||
handles: 'e',
|
||||
minWidth: 200,
|
||||
maxWidth: 800
|
||||
});
|
||||
|
||||
$('div.ui-split-side').resizable({
|
||||
handles: 'e',
|
||||
proxy: 'proxy',
|
||||
minWidth: 200,
|
||||
maxWidth: 300
|
||||
});
|
||||
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -1,41 +1,41 @@
|
||||
;(function($) {
|
||||
|
||||
$.effects.clip = function(o) {
|
||||
|
||||
return this.queue(function() {
|
||||
|
||||
// Create element
|
||||
var el = $(this), props = ['position','top','left','width','height'];
|
||||
|
||||
// Set options
|
||||
var mode = $.effects.setMode(el, o.options.mode || 'hide'); // Set Mode
|
||||
var direction = o.options.direction || 'vertical'; // Default direction
|
||||
|
||||
// Adjust
|
||||
$.effects.save(el, props); el.show(); // Save & Show
|
||||
$.effects.createWrapper(el).css({overflow:'hidden'}); // Create Wrapper
|
||||
var ref = {
|
||||
size: (direction == 'vertical') ? 'height' : 'width',
|
||||
position: (direction == 'vertical') ? 'top' : 'left'
|
||||
};
|
||||
var distance = (direction == 'vertical') ? el.height() : el.width();
|
||||
if(mode == 'show') { el.css(ref.size, 0); el.css(ref.position, distance / 2); } // Shift
|
||||
|
||||
// Animation
|
||||
var animation = {};
|
||||
animation[ref.size] = mode == 'show' ? distance : 0;
|
||||
animation[ref.position] = mode == 'show' ? 0 : distance / 2;
|
||||
|
||||
// Animate
|
||||
el.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() {
|
||||
if(mode == 'hide') el.hide(); // Hide
|
||||
$.effects.restore(el, props); $.effects.removeWrapper(el); // Restore
|
||||
if(o.callback) o.callback.apply(this, arguments); // Callback
|
||||
el.dequeue();
|
||||
}});
|
||||
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
;(function($) {
|
||||
|
||||
$.effects.clip = function(o) {
|
||||
|
||||
return this.queue(function() {
|
||||
|
||||
// Create element
|
||||
var el = $(this), props = ['position','top','left','width','height'];
|
||||
|
||||
// Set options
|
||||
var mode = $.effects.setMode(el, o.options.mode || 'hide'); // Set Mode
|
||||
var direction = o.options.direction || 'vertical'; // Default direction
|
||||
|
||||
// Adjust
|
||||
$.effects.save(el, props); el.show(); // Save & Show
|
||||
$.effects.createWrapper(el).css({overflow:'hidden'}); // Create Wrapper
|
||||
var ref = {
|
||||
size: (direction == 'vertical') ? 'height' : 'width',
|
||||
position: (direction == 'vertical') ? 'top' : 'left'
|
||||
};
|
||||
var distance = (direction == 'vertical') ? el.height() : el.width();
|
||||
if(mode == 'show') { el.css(ref.size, 0); el.css(ref.position, distance / 2); } // Shift
|
||||
|
||||
// Animation
|
||||
var animation = {};
|
||||
animation[ref.size] = mode == 'show' ? distance : 0;
|
||||
animation[ref.position] = mode == 'show' ? 0 : distance / 2;
|
||||
|
||||
// Animate
|
||||
el.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() {
|
||||
if(mode == 'hide') el.hide(); // Hide
|
||||
$.effects.restore(el, props); $.effects.removeWrapper(el); // Restore
|
||||
if(o.callback) o.callback.apply(this, arguments); // Callback
|
||||
el.dequeue();
|
||||
}});
|
||||
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
|
||||
@@ -1,38 +1,38 @@
|
||||
;(function($) {
|
||||
|
||||
$.effects.drop = function(o) {
|
||||
|
||||
return this.queue(function() {
|
||||
|
||||
// Create element
|
||||
var el = $(this), props = ['position','top','left','opacity'];
|
||||
|
||||
// Set options
|
||||
var mode = $.effects.setMode(el, o.options.mode || 'hide'); // Set Mode
|
||||
var direction = o.options.direction || 'left'; // Default Direction
|
||||
|
||||
// Adjust
|
||||
$.effects.save(el, props); el.show(); // Save & Show
|
||||
$.effects.createWrapper(el); // Create Wrapper
|
||||
var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left';
|
||||
var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg';
|
||||
var distance = o.options.distance || (ref == 'top' ? el.outerHeight({margin:true}) / 2 : el.outerWidth({margin:true}) / 2);
|
||||
if (mode == 'show') el.css('opacity', 0).css(ref, motion == 'pos' ? -distance : distance); // Shift
|
||||
|
||||
// Animation
|
||||
var animation = {opacity: mode == 'show' ? 1 : 0};
|
||||
animation[ref] = (mode == 'show' ? (motion == 'pos' ? '+=' : '-=') : (motion == 'pos' ? '-=' : '+=')) + distance;
|
||||
|
||||
// Animate
|
||||
el.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() {
|
||||
if(mode == 'hide') el.hide(); // Hide
|
||||
$.effects.restore(el, props); $.effects.removeWrapper(el); // Restore
|
||||
if(o.callback) o.callback.apply(this, arguments); // Callback
|
||||
el.dequeue();
|
||||
}});
|
||||
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
;(function($) {
|
||||
|
||||
$.effects.drop = function(o) {
|
||||
|
||||
return this.queue(function() {
|
||||
|
||||
// Create element
|
||||
var el = $(this), props = ['position','top','left','opacity'];
|
||||
|
||||
// Set options
|
||||
var mode = $.effects.setMode(el, o.options.mode || 'hide'); // Set Mode
|
||||
var direction = o.options.direction || 'left'; // Default Direction
|
||||
|
||||
// Adjust
|
||||
$.effects.save(el, props); el.show(); // Save & Show
|
||||
$.effects.createWrapper(el); // Create Wrapper
|
||||
var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left';
|
||||
var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg';
|
||||
var distance = o.options.distance || (ref == 'top' ? el.outerHeight({margin:true}) / 2 : el.outerWidth({margin:true}) / 2);
|
||||
if (mode == 'show') el.css('opacity', 0).css(ref, motion == 'pos' ? -distance : distance); // Shift
|
||||
|
||||
// Animation
|
||||
var animation = {opacity: mode == 'show' ? 1 : 0};
|
||||
animation[ref] = (mode == 'show' ? (motion == 'pos' ? '+=' : '-=') : (motion == 'pos' ? '-=' : '+=')) + distance;
|
||||
|
||||
// Animate
|
||||
el.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() {
|
||||
if(mode == 'hide') el.hide(); // Hide
|
||||
$.effects.restore(el, props); $.effects.removeWrapper(el); // Restore
|
||||
if(o.callback) o.callback.apply(this, arguments); // Callback
|
||||
el.dequeue();
|
||||
}});
|
||||
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
|
||||
@@ -1,67 +1,67 @@
|
||||
;(function($) {
|
||||
|
||||
$.effects.explode = function(o) {
|
||||
|
||||
return this.queue(function() {
|
||||
|
||||
var rows = o.options.pieces ? Math.round(Math.sqrt(o.options.pieces)) : 3;
|
||||
var cells = o.options.pieces ? Math.round(Math.sqrt(o.options.pieces)) : 3;
|
||||
|
||||
o.options.mode = o.options.mode == 'toggle' ? ($(this).is(':visible') ? 'hide' : 'show') : o.options.mode;
|
||||
var el = $(this).show().css('visibility', 'hidden');
|
||||
var offset = el.offset();
|
||||
|
||||
//Substract the margins - not fixing the problem yet.
|
||||
offset.top -= parseInt(el.css("marginTop")) || 0;
|
||||
offset.left -= parseInt(el.css("marginLeft")) || 0;
|
||||
|
||||
var width = el.outerWidth(true);
|
||||
var height = el.outerHeight(true);
|
||||
|
||||
for(var i=0;i<rows;i++) { // =
|
||||
for(var j=0;j<cells;j++) { // ||
|
||||
el
|
||||
.clone()
|
||||
.appendTo('body')
|
||||
.wrap('<div></div>')
|
||||
.css({
|
||||
position: 'absolute',
|
||||
visibility: 'visible',
|
||||
left: -j*(width/cells),
|
||||
top: -i*(height/rows)
|
||||
})
|
||||
.parent()
|
||||
.addClass('ec-explode')
|
||||
.css({
|
||||
position: 'absolute',
|
||||
overflow: 'hidden',
|
||||
width: width/cells,
|
||||
height: height/rows,
|
||||
left: offset.left + j*(width/cells) + (o.options.mode == 'show' ? (j-Math.floor(cells/2))*(width/cells) : 0),
|
||||
top: offset.top + i*(height/rows) + (o.options.mode == 'show' ? (i-Math.floor(rows/2))*(height/rows) : 0),
|
||||
opacity: o.options.mode == 'show' ? 0 : 1
|
||||
}).animate({
|
||||
left: offset.left + j*(width/cells) + (o.options.mode == 'show' ? 0 : (j-Math.floor(cells/2))*(width/cells)),
|
||||
top: offset.top + i*(height/rows) + (o.options.mode == 'show' ? 0 : (i-Math.floor(rows/2))*(height/rows)),
|
||||
opacity: o.options.mode == 'show' ? 1 : 0
|
||||
}, o.duration || 500);
|
||||
}
|
||||
}
|
||||
|
||||
// Set a timeout, to call the callback approx. when the other animations have finished
|
||||
setTimeout(function() {
|
||||
|
||||
o.options.mode == 'show' ? el.css({ visibility: 'visible' }) : el.css({ visibility: 'visible' }).hide();
|
||||
if(o.callback) o.callback.apply(el[0]); // Callback
|
||||
el.dequeue();
|
||||
|
||||
$('.ec-explode').remove();
|
||||
|
||||
}, o.duration || 500);
|
||||
|
||||
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
;(function($) {
|
||||
|
||||
$.effects.explode = function(o) {
|
||||
|
||||
return this.queue(function() {
|
||||
|
||||
var rows = o.options.pieces ? Math.round(Math.sqrt(o.options.pieces)) : 3;
|
||||
var cells = o.options.pieces ? Math.round(Math.sqrt(o.options.pieces)) : 3;
|
||||
|
||||
o.options.mode = o.options.mode == 'toggle' ? ($(this).is(':visible') ? 'hide' : 'show') : o.options.mode;
|
||||
var el = $(this).show().css('visibility', 'hidden');
|
||||
var offset = el.offset();
|
||||
|
||||
//Substract the margins - not fixing the problem yet.
|
||||
offset.top -= parseInt(el.css("marginTop")) || 0;
|
||||
offset.left -= parseInt(el.css("marginLeft")) || 0;
|
||||
|
||||
var width = el.outerWidth(true);
|
||||
var height = el.outerHeight(true);
|
||||
|
||||
for(var i=0;i<rows;i++) { // =
|
||||
for(var j=0;j<cells;j++) { // ||
|
||||
el
|
||||
.clone()
|
||||
.appendTo('body')
|
||||
.wrap('<div></div>')
|
||||
.css({
|
||||
position: 'absolute',
|
||||
visibility: 'visible',
|
||||
left: -j*(width/cells),
|
||||
top: -i*(height/rows)
|
||||
})
|
||||
.parent()
|
||||
.addClass('ec-explode')
|
||||
.css({
|
||||
position: 'absolute',
|
||||
overflow: 'hidden',
|
||||
width: width/cells,
|
||||
height: height/rows,
|
||||
left: offset.left + j*(width/cells) + (o.options.mode == 'show' ? (j-Math.floor(cells/2))*(width/cells) : 0),
|
||||
top: offset.top + i*(height/rows) + (o.options.mode == 'show' ? (i-Math.floor(rows/2))*(height/rows) : 0),
|
||||
opacity: o.options.mode == 'show' ? 0 : 1
|
||||
}).animate({
|
||||
left: offset.left + j*(width/cells) + (o.options.mode == 'show' ? 0 : (j-Math.floor(cells/2))*(width/cells)),
|
||||
top: offset.top + i*(height/rows) + (o.options.mode == 'show' ? 0 : (i-Math.floor(rows/2))*(height/rows)),
|
||||
opacity: o.options.mode == 'show' ? 1 : 0
|
||||
}, o.duration || 500);
|
||||
}
|
||||
}
|
||||
|
||||
// Set a timeout, to call the callback approx. when the other animations have finished
|
||||
setTimeout(function() {
|
||||
|
||||
o.options.mode == 'show' ? el.css({ visibility: 'visible' }) : el.css({ visibility: 'visible' }).hide();
|
||||
if(o.callback) o.callback.apply(el[0]); // Callback
|
||||
el.dequeue();
|
||||
|
||||
$('.ec-explode').remove();
|
||||
|
||||
}, o.duration || 500);
|
||||
|
||||
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
@@ -1,36 +1,36 @@
|
||||
;(function($) {
|
||||
|
||||
$.effects.highlight = function(o) {
|
||||
|
||||
return this.queue(function() {
|
||||
|
||||
// Create element
|
||||
var el = $(this), props = ['backgroundImage','backgroundColor','opacity'];
|
||||
|
||||
// Set options
|
||||
var mode = $.effects.setMode(el, o.options.mode || 'show'); // Set Mode
|
||||
var color = o.options.color || "#ffff99"; // Default highlight color
|
||||
var oldColor = el.css("backgroundColor");
|
||||
|
||||
// Adjust
|
||||
$.effects.save(el, props); el.show(); // Save & Show
|
||||
el.css({backgroundImage: 'none', backgroundColor: color}); // Shift
|
||||
|
||||
// Animation
|
||||
var animation = {backgroundColor: oldColor };
|
||||
if (mode == "hide") animation['opacity'] = 0;
|
||||
|
||||
// Animate
|
||||
el.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() {
|
||||
if(mode == "hide") el.hide();
|
||||
$.effects.restore(el, props);
|
||||
if (mode == "show" && jQuery.browser.msie) this.style.removeAttribute('filter');
|
||||
if(o.callback) o.callback.apply(this, arguments);
|
||||
el.dequeue();
|
||||
}});
|
||||
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
;(function($) {
|
||||
|
||||
$.effects.highlight = function(o) {
|
||||
|
||||
return this.queue(function() {
|
||||
|
||||
// Create element
|
||||
var el = $(this), props = ['backgroundImage','backgroundColor','opacity'];
|
||||
|
||||
// Set options
|
||||
var mode = $.effects.setMode(el, o.options.mode || 'show'); // Set Mode
|
||||
var color = o.options.color || "#ffff99"; // Default highlight color
|
||||
var oldColor = el.css("backgroundColor");
|
||||
|
||||
// Adjust
|
||||
$.effects.save(el, props); el.show(); // Save & Show
|
||||
el.css({backgroundImage: 'none', backgroundColor: color}); // Shift
|
||||
|
||||
// Animation
|
||||
var animation = {backgroundColor: oldColor };
|
||||
if (mode == "hide") animation['opacity'] = 0;
|
||||
|
||||
// Animate
|
||||
el.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() {
|
||||
if(mode == "hide") el.hide();
|
||||
$.effects.restore(el, props);
|
||||
if (mode == "show" && jQuery.browser.msie) this.style.removeAttribute('filter');
|
||||
if(o.callback) o.callback.apply(this, arguments);
|
||||
el.dequeue();
|
||||
}});
|
||||
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
@@ -1,43 +1,43 @@
|
||||
;(function($) {
|
||||
|
||||
$.effects.pulsate = function(o) {
|
||||
|
||||
return this.queue(function() {
|
||||
|
||||
// Create element
|
||||
var el = $(this);
|
||||
|
||||
// Set options
|
||||
var mode = $.effects.setMode(el, o.options.mode || 'show'); // Set Mode
|
||||
var times = o.options.times || 5; // Default # of times
|
||||
|
||||
// Adjust
|
||||
if (mode != 'hide') times--;
|
||||
if (el.is(':hidden')) { // Show fadeIn
|
||||
el.css('opacity', 0);
|
||||
el.show(); // Show
|
||||
el.animate({opacity: 1}, o.duration / 2, o.options.easing);
|
||||
times--;
|
||||
}
|
||||
|
||||
// Animate
|
||||
for (var i = 0; i < times; i++) { // Pulsate
|
||||
el.animate({opacity: 0}, o.duration / 2, o.options.easing).animate({opacity: 1}, o.duration / 2, o.options.easing);
|
||||
};
|
||||
if (mode == 'hide') { // Last Pulse
|
||||
el.animate({opacity: 0}, o.duration / 2, o.options.easing, function(){
|
||||
el.hide(); // Hide
|
||||
if(o.callback) o.callback.apply(this, arguments); // Callback
|
||||
});
|
||||
} else {
|
||||
el.animate({opacity: 0}, o.duration / 2, o.options.easing).animate({opacity: 1}, o.duration / 2, o.options.easing, function(){
|
||||
if(o.callback) o.callback.apply(this, arguments); // Callback
|
||||
});
|
||||
};
|
||||
el.queue('fx', function() { el.dequeue(); });
|
||||
el.dequeue();
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
;(function($) {
|
||||
|
||||
$.effects.pulsate = function(o) {
|
||||
|
||||
return this.queue(function() {
|
||||
|
||||
// Create element
|
||||
var el = $(this);
|
||||
|
||||
// Set options
|
||||
var mode = $.effects.setMode(el, o.options.mode || 'show'); // Set Mode
|
||||
var times = o.options.times || 5; // Default # of times
|
||||
|
||||
// Adjust
|
||||
if (mode != 'hide') times--;
|
||||
if (el.is(':hidden')) { // Show fadeIn
|
||||
el.css('opacity', 0);
|
||||
el.show(); // Show
|
||||
el.animate({opacity: 1}, o.duration / 2, o.options.easing);
|
||||
times--;
|
||||
}
|
||||
|
||||
// Animate
|
||||
for (var i = 0; i < times; i++) { // Pulsate
|
||||
el.animate({opacity: 0}, o.duration / 2, o.options.easing).animate({opacity: 1}, o.duration / 2, o.options.easing);
|
||||
};
|
||||
if (mode == 'hide') { // Last Pulse
|
||||
el.animate({opacity: 0}, o.duration / 2, o.options.easing, function(){
|
||||
el.hide(); // Hide
|
||||
if(o.callback) o.callback.apply(this, arguments); // Callback
|
||||
});
|
||||
} else {
|
||||
el.animate({opacity: 0}, o.duration / 2, o.options.easing).animate({opacity: 1}, o.duration / 2, o.options.easing, function(){
|
||||
if(o.callback) o.callback.apply(this, arguments); // Callback
|
||||
});
|
||||
};
|
||||
el.queue('fx', function() { el.dequeue(); });
|
||||
el.dequeue();
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
@@ -1,45 +1,45 @@
|
||||
;(function($) {
|
||||
|
||||
$.effects.shake = function(o) {
|
||||
|
||||
return this.queue(function() {
|
||||
|
||||
// Create element
|
||||
var el = $(this), props = ['position','top','left'];
|
||||
|
||||
// Set options
|
||||
var mode = $.effects.setMode(el, o.options.mode || 'effect'); // Set Mode
|
||||
var direction = o.options.direction || 'left'; // Default direction
|
||||
var distance = o.options.distance || 20; // Default distance
|
||||
var times = o.options.times || 3; // Default # of times
|
||||
var speed = o.duration || o.options.duration || 140; // Default speed per shake
|
||||
|
||||
// Adjust
|
||||
$.effects.save(el, props); el.show(); // Save & Show
|
||||
$.effects.createWrapper(el); // Create Wrapper
|
||||
var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left';
|
||||
var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg';
|
||||
|
||||
// Animation
|
||||
var animation = {}, animation1 = {}, animation2 = {};
|
||||
animation[ref] = (motion == 'pos' ? '-=' : '+=') + distance;
|
||||
animation1[ref] = (motion == 'pos' ? '+=' : '-=') + distance * 2;
|
||||
animation2[ref] = (motion == 'pos' ? '-=' : '+=') + distance * 2;
|
||||
|
||||
// Animate
|
||||
el.animate(animation, speed, o.options.easing);
|
||||
for (var i = 1; i < times; i++) { // Shakes
|
||||
el.animate(animation1, speed, o.options.easing).animate(animation2, speed, o.options.easing);
|
||||
};
|
||||
el.animate(animation1, speed, o.options.easing).
|
||||
animate(animation, speed / 2, o.options.easing, function(){ // Last shake
|
||||
$.effects.restore(el, props); $.effects.removeWrapper(el); // Restore
|
||||
if(o.callback) o.callback.apply(this, arguments); // Callback
|
||||
});
|
||||
el.queue('fx', function() { el.dequeue(); });
|
||||
el.dequeue();
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
;(function($) {
|
||||
|
||||
$.effects.shake = function(o) {
|
||||
|
||||
return this.queue(function() {
|
||||
|
||||
// Create element
|
||||
var el = $(this), props = ['position','top','left'];
|
||||
|
||||
// Set options
|
||||
var mode = $.effects.setMode(el, o.options.mode || 'effect'); // Set Mode
|
||||
var direction = o.options.direction || 'left'; // Default direction
|
||||
var distance = o.options.distance || 20; // Default distance
|
||||
var times = o.options.times || 3; // Default # of times
|
||||
var speed = o.duration || o.options.duration || 140; // Default speed per shake
|
||||
|
||||
// Adjust
|
||||
$.effects.save(el, props); el.show(); // Save & Show
|
||||
$.effects.createWrapper(el); // Create Wrapper
|
||||
var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left';
|
||||
var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg';
|
||||
|
||||
// Animation
|
||||
var animation = {}, animation1 = {}, animation2 = {};
|
||||
animation[ref] = (motion == 'pos' ? '-=' : '+=') + distance;
|
||||
animation1[ref] = (motion == 'pos' ? '+=' : '-=') + distance * 2;
|
||||
animation2[ref] = (motion == 'pos' ? '-=' : '+=') + distance * 2;
|
||||
|
||||
// Animate
|
||||
el.animate(animation, speed, o.options.easing);
|
||||
for (var i = 1; i < times; i++) { // Shakes
|
||||
el.animate(animation1, speed, o.options.easing).animate(animation2, speed, o.options.easing);
|
||||
};
|
||||
el.animate(animation1, speed, o.options.easing).
|
||||
animate(animation, speed / 2, o.options.easing, function(){ // Last shake
|
||||
$.effects.restore(el, props); $.effects.removeWrapper(el); // Restore
|
||||
if(o.callback) o.callback.apply(this, arguments); // Callback
|
||||
});
|
||||
el.queue('fx', function() { el.dequeue(); });
|
||||
el.dequeue();
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
|
||||
@@ -1,38 +1,38 @@
|
||||
;(function($) {
|
||||
|
||||
$.effects.slide = function(o) {
|
||||
|
||||
return this.queue(function() {
|
||||
|
||||
// Create element
|
||||
var el = $(this), props = ['position','top','left'];
|
||||
|
||||
// Set options
|
||||
var mode = $.effects.setMode(el, o.options.mode || 'show'); // Set Mode
|
||||
var direction = o.options.direction || 'left'; // Default Direction
|
||||
|
||||
// Adjust
|
||||
$.effects.save(el, props); el.show(); // Save & Show
|
||||
$.effects.createWrapper(el).css({overflow:'hidden'}); // Create Wrapper
|
||||
var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left';
|
||||
var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg';
|
||||
var distance = o.options.distance || (ref == 'top' ? el.outerHeight({margin:true}) : el.outerWidth({margin:true}));
|
||||
if (mode == 'show') el.css(ref, motion == 'pos' ? -distance : distance); // Shift
|
||||
|
||||
// Animation
|
||||
var animation = {};
|
||||
animation[ref] = (mode == 'show' ? (motion == 'pos' ? '+=' : '-=') : (motion == 'pos' ? '-=' : '+=')) + distance;
|
||||
|
||||
// Animate
|
||||
el.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() {
|
||||
if(mode == 'hide') el.hide(); // Hide
|
||||
$.effects.restore(el, props); $.effects.removeWrapper(el); // Restore
|
||||
if(o.callback) o.callback.apply(this, arguments); // Callback
|
||||
el.dequeue();
|
||||
}});
|
||||
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
;(function($) {
|
||||
|
||||
$.effects.slide = function(o) {
|
||||
|
||||
return this.queue(function() {
|
||||
|
||||
// Create element
|
||||
var el = $(this), props = ['position','top','left'];
|
||||
|
||||
// Set options
|
||||
var mode = $.effects.setMode(el, o.options.mode || 'show'); // Set Mode
|
||||
var direction = o.options.direction || 'left'; // Default Direction
|
||||
|
||||
// Adjust
|
||||
$.effects.save(el, props); el.show(); // Save & Show
|
||||
$.effects.createWrapper(el).css({overflow:'hidden'}); // Create Wrapper
|
||||
var ref = (direction == 'up' || direction == 'down') ? 'top' : 'left';
|
||||
var motion = (direction == 'up' || direction == 'left') ? 'pos' : 'neg';
|
||||
var distance = o.options.distance || (ref == 'top' ? el.outerHeight({margin:true}) : el.outerWidth({margin:true}));
|
||||
if (mode == 'show') el.css(ref, motion == 'pos' ? -distance : distance); // Shift
|
||||
|
||||
// Animation
|
||||
var animation = {};
|
||||
animation[ref] = (mode == 'show' ? (motion == 'pos' ? '+=' : '-=') : (motion == 'pos' ? '-=' : '+=')) + distance;
|
||||
|
||||
// Animate
|
||||
el.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() {
|
||||
if(mode == 'hide') el.hide(); // Hide
|
||||
$.effects.restore(el, props); $.effects.removeWrapper(el); // Restore
|
||||
if(o.callback) o.callback.apply(this, arguments); // Callback
|
||||
el.dequeue();
|
||||
}});
|
||||
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
@@ -1,46 +1,46 @@
|
||||
;(function($) {
|
||||
|
||||
$.effects.transfer = function(o) {
|
||||
|
||||
return this.queue(function() {
|
||||
|
||||
// Create element
|
||||
var el = $(this);
|
||||
|
||||
// Set options
|
||||
var mode = $.effects.setMode(el, o.options.mode || 'effect'); // Set Mode
|
||||
var target = $(o.options.to); // Find Target
|
||||
var position = el.offset();
|
||||
var transfer = $('<div class="ui-effects-transfer"></div>').appendTo(document.body);
|
||||
|
||||
// Set target css
|
||||
transfer.addClass(o.options.className);
|
||||
transfer.css({
|
||||
top: position.top,
|
||||
left: position.left,
|
||||
height: el.outerHeight(true) - parseInt(transfer.css('borderTopWidth')) - parseInt(transfer.css('borderBottomWidth')),
|
||||
width: el.outerWidth(true) - parseInt(transfer.css('borderLeftWidth')) - parseInt(transfer.css('borderRightWidth')),
|
||||
position: 'absolute'
|
||||
});
|
||||
|
||||
// Animation
|
||||
position = target.offset();
|
||||
animation = {
|
||||
top: position.top,
|
||||
left: position.top,
|
||||
height: target.outerHeight() - parseInt(transfer.css('borderTopWidth')) - parseInt(transfer.css('borderBottomWidth')),
|
||||
width: target.outerWidth() - parseInt(transfer.css('borderLeftWidth')) - parseInt(transfer.css('borderRightWidth'))
|
||||
};
|
||||
|
||||
// Animate
|
||||
transfer.animate(animation, o.duration, o.options.easing, function() {
|
||||
transfer.remove(); // Remove div
|
||||
if(o.callback) o.callback.apply(el[0], arguments); // Callback
|
||||
el.dequeue();
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
;(function($) {
|
||||
|
||||
$.effects.transfer = function(o) {
|
||||
|
||||
return this.queue(function() {
|
||||
|
||||
// Create element
|
||||
var el = $(this);
|
||||
|
||||
// Set options
|
||||
var mode = $.effects.setMode(el, o.options.mode || 'effect'); // Set Mode
|
||||
var target = $(o.options.to); // Find Target
|
||||
var position = el.offset();
|
||||
var transfer = $('<div class="ui-effects-transfer"></div>').appendTo(document.body);
|
||||
|
||||
// Set target css
|
||||
transfer.addClass(o.options.className);
|
||||
transfer.css({
|
||||
top: position.top,
|
||||
left: position.left,
|
||||
height: el.outerHeight(true) - parseInt(transfer.css('borderTopWidth')) - parseInt(transfer.css('borderBottomWidth')),
|
||||
width: el.outerWidth(true) - parseInt(transfer.css('borderLeftWidth')) - parseInt(transfer.css('borderRightWidth')),
|
||||
position: 'absolute'
|
||||
});
|
||||
|
||||
// Animation
|
||||
position = target.offset();
|
||||
animation = {
|
||||
top: position.top,
|
||||
left: position.top,
|
||||
height: target.outerHeight() - parseInt(transfer.css('borderTopWidth')) - parseInt(transfer.css('borderBottomWidth')),
|
||||
width: target.outerWidth() - parseInt(transfer.css('borderLeftWidth')) - parseInt(transfer.css('borderRightWidth'))
|
||||
};
|
||||
|
||||
// Animate
|
||||
transfer.animate(animation, o.duration, o.options.easing, function() {
|
||||
transfer.remove(); // Remove div
|
||||
if(o.callback) o.callback.apply(el[0], arguments); // Callback
|
||||
el.dequeue();
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Armenian(UTF-8) initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Levon Zakaryan (levon.zakaryan@gmail.com)*/
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['am'] = {clearText: 'Մաքրել', clearStatus: '',
|
||||
closeText: 'Փակել', closeStatus: '',
|
||||
prevText: '<Նախ.', prevStatus: '',
|
||||
nextText: 'Հաջ.>', nextStatus: '',
|
||||
currentText: 'Այսօր', currentStatus: '',
|
||||
monthNames: ['Հունվար','Փետրվար','Մարտ','Ապրիլ','Մայիս','Հունիս',
|
||||
'Հուլիս','Օգոստոս','Սեպտեմբեր','Հոկտեմբեր','Նոյեմբեր','Դեկտեմբեր'],
|
||||
monthNamesShort: ['Հունվ','Փետր','Մարտ','Ապր','Մայիս','Հունիս',
|
||||
'Հուլ','Օգս','Սեպ','Հոկ','Նոյ','Դեկ'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'ՇԲՏ', weekStatus: '',
|
||||
dayNames: ['կիրակի','եկուշաբթի','երեքշաբթի','չորեքշաբթի','հինգշաբթի','ուրբաթ','շաբաթ'],
|
||||
dayNamesShort: ['կիր','երկ','երք','չրք','հնգ','ուրբ','շբթ'],
|
||||
dayNamesMin: ['կիր','երկ','երք','չրք','հնգ','ուրբ','շբթ'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd.mm.yy', firstDay: 1,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['am']);
|
||||
/* Armenian(UTF-8) initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Levon Zakaryan (levon.zakaryan@gmail.com)*/
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['am'] = {clearText: 'Մաքրել', clearStatus: '',
|
||||
closeText: 'Փակել', closeStatus: '',
|
||||
prevText: '<Նախ.', prevStatus: '',
|
||||
nextText: 'Հաջ.>', nextStatus: '',
|
||||
currentText: 'Այսօր', currentStatus: '',
|
||||
monthNames: ['Հունվար','Փետրվար','Մարտ','Ապրիլ','Մայիս','Հունիս',
|
||||
'Հուլիս','Օգոստոս','Սեպտեմբեր','Հոկտեմբեր','Նոյեմբեր','Դեկտեմբեր'],
|
||||
monthNamesShort: ['Հունվ','Փետր','Մարտ','Ապր','Մայիս','Հունիս',
|
||||
'Հուլ','Օգս','Սեպ','Հոկ','Նոյ','Դեկ'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'ՇԲՏ', weekStatus: '',
|
||||
dayNames: ['կիրակի','եկուշաբթի','երեքշաբթի','չորեքշաբթի','հինգշաբթի','ուրբաթ','շաբաթ'],
|
||||
dayNamesShort: ['կիր','երկ','երք','չրք','հնգ','ուրբ','շբթ'],
|
||||
dayNamesMin: ['կիր','երկ','երք','չրք','հնգ','ուրբ','շբթ'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd.mm.yy', firstDay: 1,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['am']);
|
||||
});
|
||||
@@ -1,31 +1,31 @@
|
||||
/* Arabic Translation for jQuery UI date picker plugin. */
|
||||
/* Khaled Al Horani -- koko.dw@gmail.com */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['ar'] = {
|
||||
clearText: 'نظيف',
|
||||
clearStatus: 'امسح التاريخ الحالي',
|
||||
closeText: 'إغلاق',
|
||||
closeStatus: 'إغلاق بدون حفظ',
|
||||
prevText: '<السابق',
|
||||
prevStatus: 'عرض الشهر السابق',
|
||||
nextText: 'التالي>',
|
||||
nextStatus: 'عرض الشهر القادم',
|
||||
currentText: 'اليوم',
|
||||
currentStatus: 'عرض الشهر الحالي',
|
||||
monthNames: ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'آذار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
|
||||
monthNamesShort: ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'آذار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
|
||||
monthStatus: 'عرض شهر آخر',
|
||||
yearStatus: 'عرض سنة آخرى',
|
||||
weekHeader: 'أسبوع',
|
||||
weekStatus: 'أسبوع السنة',
|
||||
dayNames: ['السبت', 'الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة'],
|
||||
dayNamesShort: ['السبت', 'الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة'],
|
||||
dayNamesMin: ['السبت', 'الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة'],
|
||||
dayStatus: 'اختر DD لليوم الأول من الأسبوع',
|
||||
dateStatus: 'اختر D, M d',
|
||||
dateFormat: 'dd/mm/yy', firstDay: 0,
|
||||
initStatus: 'اختر يوم',
|
||||
isRTL: true
|
||||
};
|
||||
$.datepicker.setDefaults($.datepicker.regional['ar']);
|
||||
/* Arabic Translation for jQuery UI date picker plugin. */
|
||||
/* Khaled Al Horani -- koko.dw@gmail.com */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['ar'] = {
|
||||
clearText: 'نظيف',
|
||||
clearStatus: 'امسح التاريخ الحالي',
|
||||
closeText: 'إغلاق',
|
||||
closeStatus: 'إغلاق بدون حفظ',
|
||||
prevText: '<السابق',
|
||||
prevStatus: 'عرض الشهر السابق',
|
||||
nextText: 'التالي>',
|
||||
nextStatus: 'عرض الشهر القادم',
|
||||
currentText: 'اليوم',
|
||||
currentStatus: 'عرض الشهر الحالي',
|
||||
monthNames: ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'آذار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
|
||||
monthNamesShort: ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'آذار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
|
||||
monthStatus: 'عرض شهر آخر',
|
||||
yearStatus: 'عرض سنة آخرى',
|
||||
weekHeader: 'أسبوع',
|
||||
weekStatus: 'أسبوع السنة',
|
||||
dayNames: ['السبت', 'الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة'],
|
||||
dayNamesShort: ['السبت', 'الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة'],
|
||||
dayNamesMin: ['السبت', 'الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة'],
|
||||
dayStatus: 'اختر DD لليوم الأول من الأسبوع',
|
||||
dateStatus: 'اختر D, M d',
|
||||
dateFormat: 'dd/mm/yy', firstDay: 0,
|
||||
initStatus: 'اختر يوم',
|
||||
isRTL: true
|
||||
};
|
||||
$.datepicker.setDefaults($.datepicker.regional['ar']);
|
||||
});
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Inicialització en català per a l'extenció 'calendar' per jQuery. */
|
||||
/* Writers: (joan.leon@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['ca'] = {clearText: 'Netejar', clearStatus: '',
|
||||
closeText: 'Tancar', closeStatus: '',
|
||||
prevText: '<Ant', prevStatus: '',
|
||||
nextText: 'Seg>', nextStatus: '',
|
||||
currentText: 'Avui', currentStatus: '',
|
||||
monthNames: ['Gener','Febrer','Març','Abril','Maig','Juny',
|
||||
'Juliol','Agost','Setembre','Octubre','Novembre','Decembre'],
|
||||
monthNamesShort: ['Gen','Feb','Mar','Abr','Mai','Jun',
|
||||
'Jul','Ago','Set','Oct','Nov','Dec'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Sm', weekStatus: '',
|
||||
dayNames: ['Diumenge','Dilluns','Dimarts','Dimecres','Dijous','Divendres','Dissabte'],
|
||||
dayNamesShort: ['Dug','Dln','Dmt','Dmc','Djs','Dvn','Dsb'],
|
||||
dayNamesMin: ['Dg','Dl','Dt','Dc','Dj','Dv','Ds'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'mm/dd/yy', firstDay: 0,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['ca']);
|
||||
/* Inicialització en català per a l'extenció 'calendar' per jQuery. */
|
||||
/* Writers: (joan.leon@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['ca'] = {clearText: 'Netejar', clearStatus: '',
|
||||
closeText: 'Tancar', closeStatus: '',
|
||||
prevText: '<Ant', prevStatus: '',
|
||||
nextText: 'Seg>', nextStatus: '',
|
||||
currentText: 'Avui', currentStatus: '',
|
||||
monthNames: ['Gener','Febrer','Març','Abril','Maig','Juny',
|
||||
'Juliol','Agost','Setembre','Octubre','Novembre','Decembre'],
|
||||
monthNamesShort: ['Gen','Feb','Mar','Abr','Mai','Jun',
|
||||
'Jul','Ago','Set','Oct','Nov','Dec'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Sm', weekStatus: '',
|
||||
dayNames: ['Diumenge','Dilluns','Dimarts','Dimecres','Dijous','Divendres','Dissabte'],
|
||||
dayNamesShort: ['Dug','Dln','Dmt','Dmc','Djs','Dvn','Dsb'],
|
||||
dayNamesMin: ['Dg','Dl','Dt','Dc','Dj','Dv','Ds'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'mm/dd/yy', firstDay: 0,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['ca']);
|
||||
});
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Czech initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Tomas Muller (tomas@tomas-muller.net). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['cs'] = {clearText: 'Vymazat', clearStatus: 'Vymaže zadané datum',
|
||||
closeText: 'Zavřít', closeStatus: 'Zavře kalendář beze změny',
|
||||
prevText: '<Dříve', prevStatus: 'Přejít na předchozí měsí',
|
||||
nextText: 'Později>', nextStatus: 'Přejít na další měsíc',
|
||||
currentText: 'Nyní', currentStatus: 'Přejde na aktuální měsíc',
|
||||
monthNames: ['leden','únor','březen','duben','květen','červen',
|
||||
'červenec','srpen','září','říjen','listopad','prosinec'],
|
||||
monthNamesShort: ['led','úno','bře','dub','kvě','čer',
|
||||
'čvc','srp','zář','říj','lis','pro'],
|
||||
monthStatus: 'Přejít na jiný měsíc', yearStatus: 'Přejít na jiný rok',
|
||||
weekHeader: 'Týd', weekStatus: 'Týden v roce',
|
||||
dayNames: ['neděle', 'pondělí', 'úterý', 'středa', 'čtvrtek', 'pátek', 'sobota'],
|
||||
dayNamesShort: ['ne', 'po', 'út', 'st', 'čt', 'pá', 'so'],
|
||||
dayNamesMin: ['ne','po','út','st','čt','pá','so'],
|
||||
dayStatus: 'Nastavit DD jako první den v týdnu', dateStatus: '\'Vyber\' DD, M d',
|
||||
dateFormat: 'dd.mm.yy', firstDay: 1,
|
||||
initStatus: 'Vyberte datum', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['cs']);
|
||||
});
|
||||
/* Czech initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Tomas Muller (tomas@tomas-muller.net). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['cs'] = {clearText: 'Vymazat', clearStatus: 'Vymaže zadané datum',
|
||||
closeText: 'Zavřít', closeStatus: 'Zavře kalendář beze změny',
|
||||
prevText: '<Dříve', prevStatus: 'Přejít na předchozí měsí',
|
||||
nextText: 'Později>', nextStatus: 'Přejít na další měsíc',
|
||||
currentText: 'Nyní', currentStatus: 'Přejde na aktuální měsíc',
|
||||
monthNames: ['leden','únor','březen','duben','květen','červen',
|
||||
'červenec','srpen','září','říjen','listopad','prosinec'],
|
||||
monthNamesShort: ['led','úno','bře','dub','kvě','čer',
|
||||
'čvc','srp','zář','říj','lis','pro'],
|
||||
monthStatus: 'Přejít na jiný měsíc', yearStatus: 'Přejít na jiný rok',
|
||||
weekHeader: 'Týd', weekStatus: 'Týden v roce',
|
||||
dayNames: ['neděle', 'pondělí', 'úterý', 'středa', 'čtvrtek', 'pátek', 'sobota'],
|
||||
dayNamesShort: ['ne', 'po', 'út', 'st', 'čt', 'pá', 'so'],
|
||||
dayNamesMin: ['ne','po','út','st','čt','pá','so'],
|
||||
dayStatus: 'Nastavit DD jako první den v týdnu', dateStatus: '\'Vyber\' DD, M d',
|
||||
dateFormat: 'dd.mm.yy', firstDay: 1,
|
||||
initStatus: 'Vyberte datum', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['cs']);
|
||||
});
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Danish initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Jan Christensen ( deletestuff@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['da'] = {clearText: 'Nulstil', clearStatus: 'Nulstil den aktuelle dato',
|
||||
closeText: 'Luk', closeStatus: 'Luk uden ændringer',
|
||||
prevText: '<Forrige', prevStatus: 'Vis forrige måned',
|
||||
nextText: 'Næste>', nextStatus: 'Vis næste måned',
|
||||
currentText: 'Idag', currentStatus: 'Vis aktuel måned',
|
||||
monthNames: ['Januar','Februar','Marts','April','Maj','Juni',
|
||||
'Juli','August','September','Oktober','November','December'],
|
||||
monthNamesShort: ['Jan','Feb','Mar','Apr','Maj','Jun',
|
||||
'Jul','Aug','Sep','Okt','Nov','Dec'],
|
||||
monthStatus: 'Vis en anden måned', yearStatus: 'Vis et andet år',
|
||||
weekHeader: 'Uge', weekStatus: 'Årets uge',
|
||||
dayNames: ['Søndag','Mandag','Tirsdag','Onsdag','Torsdag','Fredag','Lørdag'],
|
||||
dayNamesShort: ['Søn','Man','Tir','Ons','Tor','Fre','Lør'],
|
||||
dayNamesMin: ['Sø','Ma','Ti','On','To','Fr','Lø'],
|
||||
dayStatus: 'Sæt DD som første ugedag', dateStatus: 'Vælg D, M d',
|
||||
dateFormat: 'dd-mm-yy', firstDay: 0,
|
||||
initStatus: 'Vælg en dato', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['da']);
|
||||
});
|
||||
/* Danish initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Jan Christensen ( deletestuff@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['da'] = {clearText: 'Nulstil', clearStatus: 'Nulstil den aktuelle dato',
|
||||
closeText: 'Luk', closeStatus: 'Luk uden ændringer',
|
||||
prevText: '<Forrige', prevStatus: 'Vis forrige måned',
|
||||
nextText: 'Næste>', nextStatus: 'Vis næste måned',
|
||||
currentText: 'Idag', currentStatus: 'Vis aktuel måned',
|
||||
monthNames: ['Januar','Februar','Marts','April','Maj','Juni',
|
||||
'Juli','August','September','Oktober','November','December'],
|
||||
monthNamesShort: ['Jan','Feb','Mar','Apr','Maj','Jun',
|
||||
'Jul','Aug','Sep','Okt','Nov','Dec'],
|
||||
monthStatus: 'Vis en anden måned', yearStatus: 'Vis et andet år',
|
||||
weekHeader: 'Uge', weekStatus: 'Årets uge',
|
||||
dayNames: ['Søndag','Mandag','Tirsdag','Onsdag','Torsdag','Fredag','Lørdag'],
|
||||
dayNamesShort: ['Søn','Man','Tir','Ons','Tor','Fre','Lør'],
|
||||
dayNamesMin: ['Sø','Ma','Ti','On','To','Fr','Lø'],
|
||||
dayStatus: 'Sæt DD som første ugedag', dateStatus: 'Vælg D, M d',
|
||||
dateFormat: 'dd-mm-yy', firstDay: 0,
|
||||
initStatus: 'Vælg en dato', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['da']);
|
||||
});
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
/* German initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Milian Wolff (mail@milianw.de). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['de'] = {clearText: 'löschen', clearStatus: 'aktuelles Datum löschen',
|
||||
closeText: 'schließen', closeStatus: 'ohne Änderungen schließen',
|
||||
prevText: '<zurück', prevStatus: 'letzten Monat zeigen',
|
||||
nextText: 'Vor>', nextStatus: 'nächsten Monat zeigen',
|
||||
currentText: 'heute', currentStatus: '',
|
||||
monthNames: ['Januar','Februar','März','April','Mai','Juni',
|
||||
'Juli','August','September','Oktober','November','Dezember'],
|
||||
monthNamesShort: ['Jan','Feb','Mär','Apr','Mai','Jun',
|
||||
'Jul','Aug','Sep','Okt','Nov','Dez'],
|
||||
monthStatus: 'anderen Monat anzeigen', yearStatus: 'anderes Jahr anzeigen',
|
||||
weekHeader: 'Wo', weekStatus: 'Woche des Monats',
|
||||
dayNames: ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'],
|
||||
dayNamesShort: ['So','Mo','Di','Mi','Do','Fr','Sa'],
|
||||
dayNamesMin: ['So','Mo','Di','Mi','Do','Fr','Sa'],
|
||||
dayStatus: 'Setze DD als ersten Wochentag', dateStatus: 'Wähle D, M d',
|
||||
dateFormat: 'dd.mm.yy', firstDay: 1,
|
||||
initStatus: 'Wähle ein Datum', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['de']);
|
||||
});
|
||||
/* German initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Milian Wolff (mail@milianw.de). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['de'] = {clearText: 'löschen', clearStatus: 'aktuelles Datum löschen',
|
||||
closeText: 'schließen', closeStatus: 'ohne Änderungen schließen',
|
||||
prevText: '<zurück', prevStatus: 'letzten Monat zeigen',
|
||||
nextText: 'Vor>', nextStatus: 'nächsten Monat zeigen',
|
||||
currentText: 'heute', currentStatus: '',
|
||||
monthNames: ['Januar','Februar','März','April','Mai','Juni',
|
||||
'Juli','August','September','Oktober','November','Dezember'],
|
||||
monthNamesShort: ['Jan','Feb','Mär','Apr','Mai','Jun',
|
||||
'Jul','Aug','Sep','Okt','Nov','Dez'],
|
||||
monthStatus: 'anderen Monat anzeigen', yearStatus: 'anderes Jahr anzeigen',
|
||||
weekHeader: 'Wo', weekStatus: 'Woche des Monats',
|
||||
dayNames: ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'],
|
||||
dayNamesShort: ['So','Mo','Di','Mi','Do','Fr','Sa'],
|
||||
dayNamesMin: ['So','Mo','Di','Mi','Do','Fr','Sa'],
|
||||
dayStatus: 'Setze DD als ersten Wochentag', dateStatus: 'Wähle D, M d',
|
||||
dateFormat: 'dd.mm.yy', firstDay: 1,
|
||||
initStatus: 'Wähle ein Datum', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['de']);
|
||||
});
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Inicialización en español para la extensión 'UI date picker' para jQuery. */
|
||||
/* Traducido por Vester (xvester@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['es'] = {clearText: 'Limpiar', clearStatus: '',
|
||||
closeText: 'Cerrar', closeStatus: '',
|
||||
prevText: '<Ant', prevStatus: '',
|
||||
nextText: 'Sig>', nextStatus: '',
|
||||
currentText: 'Hoy', currentStatus: '',
|
||||
monthNames: ['Enero','Febrero','Marzo','Abril','Mayo','Junio',
|
||||
'Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre'],
|
||||
monthNamesShort: ['Ene','Feb','Mar','Abr','May','Jun',
|
||||
'Jul','Ago','Sep','Oct','Nov','Dic'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Sm', weekStatus: '',
|
||||
dayNames: ['Domingo','Lunes','Martes','Miércoles','Jueves','Viernes','Sádabo'],
|
||||
dayNamesShort: ['Dom','Lun','Mar','Mié','Juv','Vie','Sáb'],
|
||||
dayNamesMin: ['Do','Lu','Ma','Mi','Ju','Vi','Sá'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd/mm/yy', firstDay: 0,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['es']);
|
||||
/* Inicialización en español para la extensión 'UI date picker' para jQuery. */
|
||||
/* Traducido por Vester (xvester@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['es'] = {clearText: 'Limpiar', clearStatus: '',
|
||||
closeText: 'Cerrar', closeStatus: '',
|
||||
prevText: '<Ant', prevStatus: '',
|
||||
nextText: 'Sig>', nextStatus: '',
|
||||
currentText: 'Hoy', currentStatus: '',
|
||||
monthNames: ['Enero','Febrero','Marzo','Abril','Mayo','Junio',
|
||||
'Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre'],
|
||||
monthNamesShort: ['Ene','Feb','Mar','Abr','May','Jun',
|
||||
'Jul','Ago','Sep','Oct','Nov','Dic'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Sm', weekStatus: '',
|
||||
dayNames: ['Domingo','Lunes','Martes','Miércoles','Jueves','Viernes','Sádabo'],
|
||||
dayNamesShort: ['Dom','Lun','Mar','Mié','Juv','Vie','Sáb'],
|
||||
dayNamesMin: ['Do','Lu','Ma','Mi','Ju','Vi','Sá'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd/mm/yy', firstDay: 0,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['es']);
|
||||
});
|
||||
@@ -1,24 +1,24 @@
|
||||
/* Finnish initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Harri Kilpiö (harrikilpio@gmail.com). */
|
||||
|
||||
$(document).ready(function(){
|
||||
$.datepicker.regional['fi'] = {
|
||||
clearText: 'Tyhjennä', clearStatus: '',
|
||||
closeText: 'Sulje', closeStatus: '',
|
||||
prevText: '«Edellinen', prevStatus: '',
|
||||
nextText: 'Seuraava»', nextStatus: '',
|
||||
currentText: 'Tänään', currentStatus: '',
|
||||
monthNames: ['Tammikuu','Helmikuu','Maaliskuu','Huhtikuu','Toukokuu','Kesäkuu',
|
||||
'Heinäkuu','Elokuu','Syyskuu','Lokakuu','Marraskuu','Joulukuu'],
|
||||
monthNamesShort: ['Tammi','Helmi','Maalis','Huhti','Touko','Kesä',
|
||||
'Heinä','Elo','Syys','Loka','Marras','Joulu'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Vk', weekStatus: '',
|
||||
dayNamesShort: ['Su','Ma','Ti','Ke','To','Pe','Su'],
|
||||
dayNames: ['Sunnuntai','Maanantai','Tiistai','Keskiviikko','Torstai','Perjantai','Lauantai'],
|
||||
dayNamesMin: ['Su','Ma','Ti','Ke','To','Pe','La'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd.mm.yy', firstDay: 1,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['fi']);
|
||||
});
|
||||
/* Finnish initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Harri Kilpiö (harrikilpio@gmail.com). */
|
||||
|
||||
$(document).ready(function(){
|
||||
$.datepicker.regional['fi'] = {
|
||||
clearText: 'Tyhjennä', clearStatus: '',
|
||||
closeText: 'Sulje', closeStatus: '',
|
||||
prevText: '«Edellinen', prevStatus: '',
|
||||
nextText: 'Seuraava»', nextStatus: '',
|
||||
currentText: 'Tänään', currentStatus: '',
|
||||
monthNames: ['Tammikuu','Helmikuu','Maaliskuu','Huhtikuu','Toukokuu','Kesäkuu',
|
||||
'Heinäkuu','Elokuu','Syyskuu','Lokakuu','Marraskuu','Joulukuu'],
|
||||
monthNamesShort: ['Tammi','Helmi','Maalis','Huhti','Touko','Kesä',
|
||||
'Heinä','Elo','Syys','Loka','Marras','Joulu'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Vk', weekStatus: '',
|
||||
dayNamesShort: ['Su','Ma','Ti','Ke','To','Pe','Su'],
|
||||
dayNames: ['Sunnuntai','Maanantai','Tiistai','Keskiviikko','Torstai','Perjantai','Lauantai'],
|
||||
dayNamesMin: ['Su','Ma','Ti','Ke','To','Pe','La'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd.mm.yy', firstDay: 1,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['fi']);
|
||||
});
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
/* French initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Keith Wood (kbwood@iprimus.com.au) and Stéphane Nahmani (sholby@sholby.net). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['fr'] = {clearText: 'Effacer', clearStatus: '',
|
||||
closeText: 'Fermer', closeStatus: 'Fermer sans modifier',
|
||||
prevText: '<Préc', prevStatus: 'Voir le mois précédent',
|
||||
nextText: 'Suiv>', nextStatus: 'Voir le mois suivant',
|
||||
currentText: 'Courant', currentStatus: 'Voir le mois courant',
|
||||
monthNames: ['Janvier','Février','Mars','Avril','Mai','Juin',
|
||||
'Juillet','Août','Septembre','Octobre','Novembre','Décembre'],
|
||||
monthNamesShort: ['Jan','Fév','Mar','Avr','Mai','Jun',
|
||||
'Jul','Aoû','Sep','Oct','Nov','Déc'],
|
||||
monthStatus: 'Voir un autre mois', yearStatus: 'Voir un autre année',
|
||||
weekHeader: 'Sm', weekStatus: '',
|
||||
dayNames: ['Dimanche','Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi'],
|
||||
dayNamesShort: ['Dim','Lun','Mar','Mer','Jeu','Ven','Sam'],
|
||||
dayNamesMin: ['Di','Lu','Ma','Me','Je','Ve','Sa'],
|
||||
dayStatus: 'Utiliser DD comme premier jour de la semaine', dateStatus: 'Choisir le DD, MM d',
|
||||
dateFormat: 'dd/mm/yy', firstDay: 0,
|
||||
initStatus: 'Choisir la date', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['fr']);
|
||||
/* French initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Keith Wood (kbwood@iprimus.com.au) and Stéphane Nahmani (sholby@sholby.net). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['fr'] = {clearText: 'Effacer', clearStatus: '',
|
||||
closeText: 'Fermer', closeStatus: 'Fermer sans modifier',
|
||||
prevText: '<Préc', prevStatus: 'Voir le mois précédent',
|
||||
nextText: 'Suiv>', nextStatus: 'Voir le mois suivant',
|
||||
currentText: 'Courant', currentStatus: 'Voir le mois courant',
|
||||
monthNames: ['Janvier','Février','Mars','Avril','Mai','Juin',
|
||||
'Juillet','Août','Septembre','Octobre','Novembre','Décembre'],
|
||||
monthNamesShort: ['Jan','Fév','Mar','Avr','Mai','Jun',
|
||||
'Jul','Aoû','Sep','Oct','Nov','Déc'],
|
||||
monthStatus: 'Voir un autre mois', yearStatus: 'Voir un autre année',
|
||||
weekHeader: 'Sm', weekStatus: '',
|
||||
dayNames: ['Dimanche','Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi'],
|
||||
dayNamesShort: ['Dim','Lun','Mar','Mer','Jeu','Ven','Sam'],
|
||||
dayNamesMin: ['Di','Lu','Ma','Me','Je','Ve','Sa'],
|
||||
dayStatus: 'Utiliser DD comme premier jour de la semaine', dateStatus: 'Choisir le DD, MM d',
|
||||
dateFormat: 'dd/mm/yy', firstDay: 0,
|
||||
initStatus: 'Choisir la date', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['fr']);
|
||||
});
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Hebrew initialisation for the UI Datepicker extension. */
|
||||
/* Written by Amir Hardon (ahardon at gmail dot com). */
|
||||
jQuery(document).ready(function(){
|
||||
jQuery.datepicker.regional['he'] = {clearText: 'נקה', clearStatus: '',
|
||||
closeText: 'סגור', closeStatus: '',
|
||||
prevText: '<הקודם', prevStatus: '',
|
||||
nextText: 'הבא>', nextStatus: '',
|
||||
currentText: 'היום', currentStatus: '',
|
||||
monthNames: ['ינואר','פברואר','מרץ','אפריל','מאי','יוני',
|
||||
'יולי','אוגוסט','ספטמבר','אוקטובר','נובמבר','דצמבר'],
|
||||
monthNamesShort: ['1','2','3','4','5','6',
|
||||
'7','8','9','10','11','12'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Sm', weekStatus: '',
|
||||
dayNames: ['ראשון','שני','שלישי','רביעי','חמישי','שישי','שבת'],
|
||||
dayNamesShort: ['א\'','ב\'','ג\'','ד\'','ה\'','ו\'','שבת'],
|
||||
dayNamesMin: ['א\'','ב\'','ג\'','ד\'','ה\'','ו\'','שבת'],
|
||||
dayStatus: 'DD', dateStatus: 'DD, M d',
|
||||
dateFormat: 'dd/mm/yy', firstDay: 0,
|
||||
initStatus: '', isRTL: true};
|
||||
jQuery.datepicker.setDefaults($.datepicker.regional['he']);
|
||||
});
|
||||
/* Hebrew initialisation for the UI Datepicker extension. */
|
||||
/* Written by Amir Hardon (ahardon at gmail dot com). */
|
||||
jQuery(document).ready(function(){
|
||||
jQuery.datepicker.regional['he'] = {clearText: 'נקה', clearStatus: '',
|
||||
closeText: 'סגור', closeStatus: '',
|
||||
prevText: '<הקודם', prevStatus: '',
|
||||
nextText: 'הבא>', nextStatus: '',
|
||||
currentText: 'היום', currentStatus: '',
|
||||
monthNames: ['ינואר','פברואר','מרץ','אפריל','מאי','יוני',
|
||||
'יולי','אוגוסט','ספטמבר','אוקטובר','נובמבר','דצמבר'],
|
||||
monthNamesShort: ['1','2','3','4','5','6',
|
||||
'7','8','9','10','11','12'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Sm', weekStatus: '',
|
||||
dayNames: ['ראשון','שני','שלישי','רביעי','חמישי','שישי','שבת'],
|
||||
dayNamesShort: ['א\'','ב\'','ג\'','ד\'','ה\'','ו\'','שבת'],
|
||||
dayNamesMin: ['א\'','ב\'','ג\'','ד\'','ה\'','ו\'','שבת'],
|
||||
dayStatus: 'DD', dateStatus: 'DD, M d',
|
||||
dateFormat: 'dd/mm/yy', firstDay: 0,
|
||||
initStatus: '', isRTL: true};
|
||||
jQuery.datepicker.setDefaults($.datepicker.regional['he']);
|
||||
});
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Hungarian initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Istvan Karaszi (jquerycalendar@spam.raszi.hu). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['hu'] = {clearText: 'törlés', clearStatus: '',
|
||||
closeText: 'bezárás', closeStatus: '',
|
||||
prevText: '« vissza', prevStatus: '',
|
||||
nextText: 'előre »', nextStatus: '',
|
||||
currentText: 'ma', currentStatus: '',
|
||||
monthNames: ['Január', 'Február', 'Március', 'Április', 'Május', 'Június',
|
||||
'Július', 'Augusztus', 'Szeptember', 'Október', 'November', 'December'],
|
||||
monthNamesShort: ['Jan', 'Feb', 'Már', 'Ápr', 'Máj', 'Jún',
|
||||
'Júl', 'Aug', 'Szep', 'Okt', 'Nov', 'Dec'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Hé', weekStatus: '',
|
||||
dayNames: ['Vasámap', 'Hétfö', 'Kedd', 'Szerda', 'Csütörtök', 'Péntek', 'Szombat'],
|
||||
dayNamesShort: ['Vas', 'Hét', 'Ked', 'Sze', 'Csü', 'Pén', 'Szo'],
|
||||
dayNamesMin: ['V', 'H', 'K', 'Sze', 'Cs', 'P', 'Szo'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'yy-mm-dd', firstDay: 1,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['hu']);
|
||||
});
|
||||
/* Hungarian initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Istvan Karaszi (jquerycalendar@spam.raszi.hu). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['hu'] = {clearText: 'törlés', clearStatus: '',
|
||||
closeText: 'bezárás', closeStatus: '',
|
||||
prevText: '« vissza', prevStatus: '',
|
||||
nextText: 'előre »', nextStatus: '',
|
||||
currentText: 'ma', currentStatus: '',
|
||||
monthNames: ['Január', 'Február', 'Március', 'Április', 'Május', 'Június',
|
||||
'Július', 'Augusztus', 'Szeptember', 'Október', 'November', 'December'],
|
||||
monthNamesShort: ['Jan', 'Feb', 'Már', 'Ápr', 'Máj', 'Jún',
|
||||
'Júl', 'Aug', 'Szep', 'Okt', 'Nov', 'Dec'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Hé', weekStatus: '',
|
||||
dayNames: ['Vasámap', 'Hétfö', 'Kedd', 'Szerda', 'Csütörtök', 'Péntek', 'Szombat'],
|
||||
dayNamesShort: ['Vas', 'Hét', 'Ked', 'Sze', 'Csü', 'Pén', 'Szo'],
|
||||
dayNamesMin: ['V', 'H', 'K', 'Sze', 'Cs', 'P', 'Szo'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'yy-mm-dd', firstDay: 1,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['hu']);
|
||||
});
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Indonesian initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Deden Fathurahman (dedenf@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['id'] = {clearText: 'kosongkan', clearStatus: 'bersihkan tanggal yang sekarang',
|
||||
closeText: 'Tutup', closeStatus: 'Tutup tanpa mengubah',
|
||||
prevText: '<mundur', prevStatus: 'Tampilkan bulan sebelumnya',
|
||||
nextText: 'maju>', nextStatus: 'Tampilkan bulan berikutnya',
|
||||
currentText: 'hari ini', currentStatus: 'Tampilkan bulan sekarang',
|
||||
monthNames: ['Januari','Februari','Maret','April','Mei','Juni',
|
||||
'Juli','Agustus','September','Oktober','Nopember','Desember'],
|
||||
monthNamesShort: ['Jan','Feb','Mar','Apr','Mei','Jun',
|
||||
'Jul','Agus','Sep','Okt','Nop','Des'],
|
||||
monthStatus: 'Tampilkan bulan yang berbeda', yearStatus: 'Tampilkan tahun yang berbeda',
|
||||
weekHeader: 'Mg', weekStatus: 'Minggu dalam tahun',
|
||||
dayNames: ['Minggu','Senin','Selasa','Rabu','Kamis','Jumat','Sabtu'],
|
||||
dayNamesShort: ['Min','Sen','Sel','Rab','kam','Jum','Sab'],
|
||||
dayNamesMin: ['Mg','Sn','Sl','Rb','Km','jm','Sb'],
|
||||
dayStatus: 'gunakan DD sebagai awal hari dalam minggu', dateStatus: 'pilih le DD, MM d',
|
||||
dateFormat: 'dd/mm/yy', firstDay: 0,
|
||||
initStatus: 'Pilih Tanggal', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['id']);
|
||||
/* Indonesian initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Deden Fathurahman (dedenf@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['id'] = {clearText: 'kosongkan', clearStatus: 'bersihkan tanggal yang sekarang',
|
||||
closeText: 'Tutup', closeStatus: 'Tutup tanpa mengubah',
|
||||
prevText: '<mundur', prevStatus: 'Tampilkan bulan sebelumnya',
|
||||
nextText: 'maju>', nextStatus: 'Tampilkan bulan berikutnya',
|
||||
currentText: 'hari ini', currentStatus: 'Tampilkan bulan sekarang',
|
||||
monthNames: ['Januari','Februari','Maret','April','Mei','Juni',
|
||||
'Juli','Agustus','September','Oktober','Nopember','Desember'],
|
||||
monthNamesShort: ['Jan','Feb','Mar','Apr','Mei','Jun',
|
||||
'Jul','Agus','Sep','Okt','Nop','Des'],
|
||||
monthStatus: 'Tampilkan bulan yang berbeda', yearStatus: 'Tampilkan tahun yang berbeda',
|
||||
weekHeader: 'Mg', weekStatus: 'Minggu dalam tahun',
|
||||
dayNames: ['Minggu','Senin','Selasa','Rabu','Kamis','Jumat','Sabtu'],
|
||||
dayNamesShort: ['Min','Sen','Sel','Rab','kam','Jum','Sab'],
|
||||
dayNamesMin: ['Mg','Sn','Sl','Rb','Km','jm','Sb'],
|
||||
dayStatus: 'gunakan DD sebagai awal hari dalam minggu', dateStatus: 'pilih le DD, MM d',
|
||||
dateFormat: 'dd/mm/yy', firstDay: 0,
|
||||
initStatus: 'Pilih Tanggal', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['id']);
|
||||
});
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Icelandic initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Haukur H. Thorsson (haukur@eskill.is). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['is'] = {clearText: 'Hreinsa', clearStatus: '',
|
||||
closeText: 'Loka', closeStatus: '',
|
||||
prevText: '< Fyrri', prevStatus: '',
|
||||
nextText: 'Næsti >', nextStatus: '',
|
||||
currentText: 'Í dag', currentStatus: '',
|
||||
monthNames: ['Janúar','Febrúar','Mars','Apríl','Maí','Júní',
|
||||
'Júlí','Ágúst','September','Október','Nóvember','Desember'],
|
||||
monthNamesShort: ['Jan','Feb','Mar','Apr','Maí','Jún',
|
||||
'Júl','Ágú','Sep','Okt','Nóv','Des'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Vika', weekStatus: '',
|
||||
dayNames: ['Sunnudagur','Mánudagur','Þriðjudagur','Miðvikudagur','Fimmtudagur','Föstudagur','Laugardagur'],
|
||||
dayNamesShort: ['Sun','Mán','Þri','Mið','Fim','Fös','Lau'],
|
||||
dayNamesMin: ['Su','Má','Þr','Mi','Fi','Fö','La'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd/mm/yy', firstDay: 0,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['is']);
|
||||
/* Icelandic initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Haukur H. Thorsson (haukur@eskill.is). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['is'] = {clearText: 'Hreinsa', clearStatus: '',
|
||||
closeText: 'Loka', closeStatus: '',
|
||||
prevText: '< Fyrri', prevStatus: '',
|
||||
nextText: 'Næsti >', nextStatus: '',
|
||||
currentText: 'Í dag', currentStatus: '',
|
||||
monthNames: ['Janúar','Febrúar','Mars','Apríl','Maí','Júní',
|
||||
'Júlí','Ágúst','September','Október','Nóvember','Desember'],
|
||||
monthNamesShort: ['Jan','Feb','Mar','Apr','Maí','Jún',
|
||||
'Júl','Ágú','Sep','Okt','Nóv','Des'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Vika', weekStatus: '',
|
||||
dayNames: ['Sunnudagur','Mánudagur','Þriðjudagur','Miðvikudagur','Fimmtudagur','Föstudagur','Laugardagur'],
|
||||
dayNamesShort: ['Sun','Mán','Þri','Mið','Fim','Fös','Lau'],
|
||||
dayNamesMin: ['Su','Má','Þr','Mi','Fi','Fö','La'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd/mm/yy', firstDay: 0,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['is']);
|
||||
});
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Italian initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Apaella (apaella@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['it'] = {clearText: 'Svuota', clearStatus: '',
|
||||
closeText: 'Chiudi', closeStatus: '',
|
||||
prevText: '<Prec', prevStatus: '',
|
||||
nextText: 'Succ>', nextStatus: '',
|
||||
currentText: 'Oggi', currentStatus: '',
|
||||
monthNames: ['Gennaio','Febbraio','Marzo','Aprile','Maggio','Giugno',
|
||||
'Luglio','Agosto','Settembre','Ottobre','Novembre','Dicembre'],
|
||||
monthNamesShort: ['Gen','Feb','Mar','Apr','Mag','Giu',
|
||||
'Lug','Ago','Set','Ott','Nov','Dic'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Sm', weekStatus: '',
|
||||
dayNames: ['Domenica','Lunedì','Martedì','Mercoledì','Giovedì','Venerdì','Sabato'],
|
||||
dayNamesShort: ['Dom','Lun','Mar','Mer','Gio','Ven','Sab'],
|
||||
dayNamesMin: ['Do','Lu','Ma','Me','Gio','Ve','Sa'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd/mm/yy', firstDay: 1,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['it']);
|
||||
});
|
||||
/* Italian initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Apaella (apaella@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['it'] = {clearText: 'Svuota', clearStatus: '',
|
||||
closeText: 'Chiudi', closeStatus: '',
|
||||
prevText: '<Prec', prevStatus: '',
|
||||
nextText: 'Succ>', nextStatus: '',
|
||||
currentText: 'Oggi', currentStatus: '',
|
||||
monthNames: ['Gennaio','Febbraio','Marzo','Aprile','Maggio','Giugno',
|
||||
'Luglio','Agosto','Settembre','Ottobre','Novembre','Dicembre'],
|
||||
monthNamesShort: ['Gen','Feb','Mar','Apr','Mag','Giu',
|
||||
'Lug','Ago','Set','Ott','Nov','Dic'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Sm', weekStatus: '',
|
||||
dayNames: ['Domenica','Lunedì','Martedì','Mercoledì','Giovedì','Venerdì','Sabato'],
|
||||
dayNamesShort: ['Dom','Lun','Mar','Mer','Gio','Ven','Sab'],
|
||||
dayNamesMin: ['Do','Lu','Ma','Me','Gio','Ve','Sa'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd/mm/yy', firstDay: 1,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['it']);
|
||||
});
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Japanese (UTF-8) initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Milly. */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['ja'] = {clearText: '削除', clearStatus: '',
|
||||
closeText: '閉じる', closeStatus: '',
|
||||
prevText: '<前月', prevStatus: '',
|
||||
nextText: '次月>', nextStatus: '',
|
||||
currentText: '今日', currentStatus: '',
|
||||
monthNames: ['1月','2月','3月','4月','5月','6月',
|
||||
'7月','8月','9月','10月','11月','12月'],
|
||||
monthNamesShort: ['1月','2月','3月','4月','5月','6月',
|
||||
'7月','8月','9月','10月','11月','12月'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Wk', weekStatus: '',
|
||||
dayNames: ['日','月','火','水','木','金','土'],
|
||||
dayNamesShort: ['日','月','火','水','木','金','土'],
|
||||
dayNamesMin: ['日','月','火','水','木','金','土'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'yy/mm/dd', firstDay: 0,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['ja']);
|
||||
/* Japanese (UTF-8) initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Milly. */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['ja'] = {clearText: '削除', clearStatus: '',
|
||||
closeText: '閉じる', closeStatus: '',
|
||||
prevText: '<前月', prevStatus: '',
|
||||
nextText: '次月>', nextStatus: '',
|
||||
currentText: '今日', currentStatus: '',
|
||||
monthNames: ['1月','2月','3月','4月','5月','6月',
|
||||
'7月','8月','9月','10月','11月','12月'],
|
||||
monthNamesShort: ['1月','2月','3月','4月','5月','6月',
|
||||
'7月','8月','9月','10月','11月','12月'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Wk', weekStatus: '',
|
||||
dayNames: ['日','月','火','水','木','金','土'],
|
||||
dayNamesShort: ['日','月','火','水','木','金','土'],
|
||||
dayNamesMin: ['日','月','火','水','木','金','土'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'yy/mm/dd', firstDay: 0,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['ja']);
|
||||
});
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Korean initialisation for the jQuery calendar extension. */
|
||||
/* Written by DaeKwon Kang (ncrash.dk@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['ko'] = {clearText: '지우기', clearStatus: '',
|
||||
closeText: '닫기', closeStatus: '',
|
||||
prevText: '이전달', prevStatus: '',
|
||||
nextText: '다음달', nextStatus: '',
|
||||
currentText: '오늘', currentStatus: '',
|
||||
monthNames: ['1월(JAN)','2월(FEB)','3월(MAR)','4월(APR)','5월(MAY)','6월(JUN)',
|
||||
'7월(JUL)','8월(AUG)','9월(SEP)','10월(OCT)','11월(NOV)','12월(DEC)'],
|
||||
monthNamesShort: ['1월(JAN)','2월(FEB)','3월(MAR)','4월(APR)','5월(MAY)','6월(JUN)',
|
||||
'7월(JUL)','8월(AUG)','9월(SEP)','10월(OCT)','11월(NOV)','12월(DEC)'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Wk', weekStatus: '',
|
||||
dayNames: ['일','월','화','수','목','금','토'],
|
||||
dayNamesShort: ['일','월','화','수','목','금','토'],
|
||||
dayNamesMin: ['일','월','화','수','목','금','토'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'yy-mm-dd', firstDay: 0,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['ko']);
|
||||
/* Korean initialisation for the jQuery calendar extension. */
|
||||
/* Written by DaeKwon Kang (ncrash.dk@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['ko'] = {clearText: '지우기', clearStatus: '',
|
||||
closeText: '닫기', closeStatus: '',
|
||||
prevText: '이전달', prevStatus: '',
|
||||
nextText: '다음달', nextStatus: '',
|
||||
currentText: '오늘', currentStatus: '',
|
||||
monthNames: ['1월(JAN)','2월(FEB)','3월(MAR)','4월(APR)','5월(MAY)','6월(JUN)',
|
||||
'7월(JUL)','8월(AUG)','9월(SEP)','10월(OCT)','11월(NOV)','12월(DEC)'],
|
||||
monthNamesShort: ['1월(JAN)','2월(FEB)','3월(MAR)','4월(APR)','5월(MAY)','6월(JUN)',
|
||||
'7월(JUL)','8월(AUG)','9월(SEP)','10월(OCT)','11월(NOV)','12월(DEC)'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Wk', weekStatus: '',
|
||||
dayNames: ['일','월','화','수','목','금','토'],
|
||||
dayNamesShort: ['일','월','화','수','목','금','토'],
|
||||
dayNamesMin: ['일','월','화','수','목','금','토'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'yy-mm-dd', firstDay: 0,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['ko']);
|
||||
});
|
||||
@@ -1,25 +1,25 @@
|
||||
/**
|
||||
* Lithuanian (UTF-8) initialisation for the jQuery UI date picker plugin.
|
||||
*
|
||||
* @author Arturas Paleicikas <arturas@avalon.lt>
|
||||
*/
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['lt'] = {clearText: 'Išvalyti', clearStatus: '',
|
||||
closeText: 'Uždaryti', closeStatus: '',
|
||||
prevText: '<Atgal', prevStatus: '',
|
||||
nextText: 'Pirmyn>', nextStatus: '',
|
||||
currentText: 'Šiandien', currentStatus: '',
|
||||
monthNames: ['Sausis','Vasaris','Kovas','Balandis','Gegužė','Birželis',
|
||||
'Liepa','Rugpjūtis','Rugsėjis','Spalis','Lapkritis','Gruodis'],
|
||||
monthNamesShort: ['Sau','Vas','Kov','Bal','Geg','Bir',
|
||||
'Lie','Rugp','Rugs','Spa','Lap','Gru'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: '', weekStatus: '',
|
||||
dayNames: ['sekmadienis','pirmadienis','antradienis','trečiadienis','ketvirtadienis','penktadienis','šeštadienis'],
|
||||
dayNamesShort: ['sek','pir','ant','tre','ket','pen','šeš'],
|
||||
dayNamesMin: ['Se','Pr','An','Tr','Ke','Pe','Še'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'yy-mm-dd', firstDay: 1,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['lt']);
|
||||
/**
|
||||
* Lithuanian (UTF-8) initialisation for the jQuery UI date picker plugin.
|
||||
*
|
||||
* @author Arturas Paleicikas <arturas@avalon.lt>
|
||||
*/
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['lt'] = {clearText: 'Išvalyti', clearStatus: '',
|
||||
closeText: 'Uždaryti', closeStatus: '',
|
||||
prevText: '<Atgal', prevStatus: '',
|
||||
nextText: 'Pirmyn>', nextStatus: '',
|
||||
currentText: 'Šiandien', currentStatus: '',
|
||||
monthNames: ['Sausis','Vasaris','Kovas','Balandis','Gegužė','Birželis',
|
||||
'Liepa','Rugpjūtis','Rugsėjis','Spalis','Lapkritis','Gruodis'],
|
||||
monthNamesShort: ['Sau','Vas','Kov','Bal','Geg','Bir',
|
||||
'Lie','Rugp','Rugs','Spa','Lap','Gru'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: '', weekStatus: '',
|
||||
dayNames: ['sekmadienis','pirmadienis','antradienis','trečiadienis','ketvirtadienis','penktadienis','šeštadienis'],
|
||||
dayNamesShort: ['sek','pir','ant','tre','ket','pen','šeš'],
|
||||
dayNamesMin: ['Se','Pr','An','Tr','Ke','Pe','Še'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'yy-mm-dd', firstDay: 1,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['lt']);
|
||||
});
|
||||
@@ -1,24 +1,24 @@
|
||||
/**
|
||||
* @author Arturas Paleicikas <arturas.paleicikas@metasite.net>
|
||||
*/
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['lv'] = {
|
||||
clearText: 'Notīrīt', clearStatus: '',
|
||||
closeText: 'Aizvērt', closeStatus: '',
|
||||
prevText: 'Iepr', prevStatus: '',
|
||||
nextText: 'Nāka', nextStatus: '',
|
||||
currentText: 'Šodien', currentStatus: '',
|
||||
monthNames: ['Janvāris','Februāris','Marts','Aprīlis','Maijs','Jūnijs',
|
||||
'Jūlijs','Augusts','Septembris','Oktobris','Novembris','Decembris'],
|
||||
monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jūn',
|
||||
'Jūl','Aug','Sep','Okt','Nov','Dec'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Nav', weekStatus: '',
|
||||
dayNames: ['svētdiena','pirmdiena','otrdiena','trešdiena','ceturtdiena','piektdiena','sestdiena'],
|
||||
dayNamesShort: ['svt','prm','otr','tre','ctr','pkt','sst'],
|
||||
dayNamesMin: ['Sv','Pr','Ot','Tr','Ct','Pk','Ss'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd-mm-yy', firstDay: 1,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['lv']);
|
||||
/**
|
||||
* @author Arturas Paleicikas <arturas.paleicikas@metasite.net>
|
||||
*/
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['lv'] = {
|
||||
clearText: 'Notīrīt', clearStatus: '',
|
||||
closeText: 'Aizvērt', closeStatus: '',
|
||||
prevText: 'Iepr', prevStatus: '',
|
||||
nextText: 'Nāka', nextStatus: '',
|
||||
currentText: 'Šodien', currentStatus: '',
|
||||
monthNames: ['Janvāris','Februāris','Marts','Aprīlis','Maijs','Jūnijs',
|
||||
'Jūlijs','Augusts','Septembris','Oktobris','Novembris','Decembris'],
|
||||
monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jūn',
|
||||
'Jūl','Aug','Sep','Okt','Nov','Dec'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Nav', weekStatus: '',
|
||||
dayNames: ['svētdiena','pirmdiena','otrdiena','trešdiena','ceturtdiena','piektdiena','sestdiena'],
|
||||
dayNamesShort: ['svt','prm','otr','tre','ctr','pkt','sst'],
|
||||
dayNamesMin: ['Sv','Pr','Ot','Tr','Ct','Pk','Ss'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd-mm-yy', firstDay: 1,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['lv']);
|
||||
});
|
||||
@@ -1,21 +1,21 @@
|
||||
/* Dutch (UTF-8) initialisation for the jQuery UI date picker plugin. */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['nl'] = {clearText: 'Wissen', clearStatus: 'Wis de huidige datum',
|
||||
closeText: 'Sluiten', closeStatus: 'Sluit zonder verandering',
|
||||
prevText: '<Terug', prevStatus: 'Laat de voorgaande maand zien',
|
||||
nextText: 'Volgende>', nextStatus: 'Laat de volgende maand zien',
|
||||
currentText: 'Vandaag', currentStatus: 'Laat de huidige maand zien',
|
||||
monthNames: ['Januari','Februari','Maart','April','Mei','Juni',
|
||||
'Juli','Augustus','September','Oktober','November','December'],
|
||||
monthNamesShort: ['Jan','Feb','Mrt','Apr','Mei','Jun',
|
||||
'Jul','Aug','Sep','Okt','Nov','Dec'],
|
||||
monthStatus: 'Laat een andere maand zien', yearStatus: 'Laat een ander jaar zien',
|
||||
weekHeader: 'Wk', weekStatus: 'Week van het jaar',
|
||||
dayNames: ['Zondag','Maandag','Dinsdag','Woensdag','Donderdag','Vrijdag','Zaterdag'],
|
||||
dayNamesShort: ['Zon','Maa','Din','Woe','Don','Vri','Zat'],
|
||||
dayNamesMin: ['Zo','Ma','Di','Wo','Do','Vr','Za'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd.mm.yy', firstDay: 1,
|
||||
initStatus: 'Kies een datum', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['nl']);
|
||||
/* Dutch (UTF-8) initialisation for the jQuery UI date picker plugin. */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['nl'] = {clearText: 'Wissen', clearStatus: 'Wis de huidige datum',
|
||||
closeText: 'Sluiten', closeStatus: 'Sluit zonder verandering',
|
||||
prevText: '<Terug', prevStatus: 'Laat de voorgaande maand zien',
|
||||
nextText: 'Volgende>', nextStatus: 'Laat de volgende maand zien',
|
||||
currentText: 'Vandaag', currentStatus: 'Laat de huidige maand zien',
|
||||
monthNames: ['Januari','Februari','Maart','April','Mei','Juni',
|
||||
'Juli','Augustus','September','Oktober','November','December'],
|
||||
monthNamesShort: ['Jan','Feb','Mrt','Apr','Mei','Jun',
|
||||
'Jul','Aug','Sep','Okt','Nov','Dec'],
|
||||
monthStatus: 'Laat een andere maand zien', yearStatus: 'Laat een ander jaar zien',
|
||||
weekHeader: 'Wk', weekStatus: 'Week van het jaar',
|
||||
dayNames: ['Zondag','Maandag','Dinsdag','Woensdag','Donderdag','Vrijdag','Zaterdag'],
|
||||
dayNamesShort: ['Zon','Maa','Din','Woe','Don','Vri','Zat'],
|
||||
dayNamesMin: ['Zo','Ma','Di','Wo','Do','Vr','Za'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd.mm.yy', firstDay: 1,
|
||||
initStatus: 'Kies een datum', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['nl']);
|
||||
});
|
||||
@@ -1,23 +1,23 @@
|
||||
/* Norwegian initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Naimdjon Takhirov (naimdjon@gmail.com). */
|
||||
|
||||
$(document).ready(function(){
|
||||
$.datepicker.regional['no'] = {clearText: 'Tøm', clearStatus: '',
|
||||
closeText: 'Lukk', closeStatus: '',
|
||||
prevText: '«Forrige', prevStatus: '',
|
||||
nextText: 'Neste»', nextStatus: '',
|
||||
currentText: 'I dag', currentStatus: '',
|
||||
monthNames: ['Januar','Februar','Mars','April','Mai','Juni',
|
||||
'Juli','August','September','Oktober','November','Desember'],
|
||||
monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun',
|
||||
'Jul','Aug','Sep','Okt','Nov','Des'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Uke', weekStatus: '',
|
||||
dayNamesShort: ['Søn','Man','Tir','Ons','Tor','Fre','Lør'],
|
||||
dayNames: ['Søndag','Mandag','Tirsdag','Onsdag','Torsdag','Fredag','Lørdag'],
|
||||
dayNamesMin: ['Sø','Ma','Ti','On','To','Fr','Lø'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'yy-mm-dd', firstDay: 0,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['no']);
|
||||
});
|
||||
/* Norwegian initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Naimdjon Takhirov (naimdjon@gmail.com). */
|
||||
|
||||
$(document).ready(function(){
|
||||
$.datepicker.regional['no'] = {clearText: 'Tøm', clearStatus: '',
|
||||
closeText: 'Lukk', closeStatus: '',
|
||||
prevText: '«Forrige', prevStatus: '',
|
||||
nextText: 'Neste»', nextStatus: '',
|
||||
currentText: 'I dag', currentStatus: '',
|
||||
monthNames: ['Januar','Februar','Mars','April','Mai','Juni',
|
||||
'Juli','August','September','Oktober','November','Desember'],
|
||||
monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun',
|
||||
'Jul','Aug','Sep','Okt','Nov','Des'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Uke', weekStatus: '',
|
||||
dayNamesShort: ['Søn','Man','Tir','Ons','Tor','Fre','Lør'],
|
||||
dayNames: ['Søndag','Mandag','Tirsdag','Onsdag','Torsdag','Fredag','Lørdag'],
|
||||
dayNamesMin: ['Sø','Ma','Ti','On','To','Fr','Lø'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'yy-mm-dd', firstDay: 0,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['no']);
|
||||
});
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Polish initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Jacek Wysocki (jacek.wysocki@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['pl'] = {clearText: 'Wyczyść', clearStatus: 'Wyczyść obecną datę',
|
||||
closeText: 'Zamknij', closeStatus: 'Zamknij bez zapisywania',
|
||||
prevText: '<Poprzedni', prevStatus: 'Pokaż poprzedni miesiąc',
|
||||
nextText: 'Następny>', nextStatus: 'Pokaż następny miesiąc',
|
||||
currentText: 'Dziś', currentStatus: 'Pokaż aktualny miesiąc',
|
||||
monthNames: ['Styczeń','Luty','Marzec','Kwiecień','Maj','Czerwiec',
|
||||
'Lipiec','Sierpień','Wrzesień','Październik','Listopad','Grudzień'],
|
||||
monthNamesShort: ['Sty','Lu','Mar','Kw','Maj','Cze',
|
||||
'Lip','Sie','Wrz','Pa','Lis','Gru'],
|
||||
monthStatus: 'Pokaż inny miesiąc', yearStatus: 'Pokaż inny rok',
|
||||
weekHeader: 'Tydz', weekStatus: 'Tydzień roku',
|
||||
dayNames: ['Niedziela','Poniedzialek','Wtorek','Środa','Czwartek','Piątek','Sobota'],
|
||||
dayNamesShort: ['Nie','Pn','Wt','Śr','Czw','Pt','So'],
|
||||
dayNamesMin: ['N','Pn','Wt','Śr','Cz','Pt','So'],
|
||||
dayStatus: 'Ustaw DD jako pierwszy dzień tygodnia', dateStatus: 'Wybierz D, M d',
|
||||
dateFormat: 'yy-mm-dd', firstDay: 1,
|
||||
initStatus: 'Wybierz datę', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['pl']);
|
||||
});
|
||||
/* Polish initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Jacek Wysocki (jacek.wysocki@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['pl'] = {clearText: 'Wyczyść', clearStatus: 'Wyczyść obecną datę',
|
||||
closeText: 'Zamknij', closeStatus: 'Zamknij bez zapisywania',
|
||||
prevText: '<Poprzedni', prevStatus: 'Pokaż poprzedni miesiąc',
|
||||
nextText: 'Następny>', nextStatus: 'Pokaż następny miesiąc',
|
||||
currentText: 'Dziś', currentStatus: 'Pokaż aktualny miesiąc',
|
||||
monthNames: ['Styczeń','Luty','Marzec','Kwiecień','Maj','Czerwiec',
|
||||
'Lipiec','Sierpień','Wrzesień','Październik','Listopad','Grudzień'],
|
||||
monthNamesShort: ['Sty','Lu','Mar','Kw','Maj','Cze',
|
||||
'Lip','Sie','Wrz','Pa','Lis','Gru'],
|
||||
monthStatus: 'Pokaż inny miesiąc', yearStatus: 'Pokaż inny rok',
|
||||
weekHeader: 'Tydz', weekStatus: 'Tydzień roku',
|
||||
dayNames: ['Niedziela','Poniedzialek','Wtorek','Środa','Czwartek','Piątek','Sobota'],
|
||||
dayNamesShort: ['Nie','Pn','Wt','Śr','Czw','Pt','So'],
|
||||
dayNamesMin: ['N','Pn','Wt','Śr','Cz','Pt','So'],
|
||||
dayStatus: 'Ustaw DD jako pierwszy dzień tygodnia', dateStatus: 'Wybierz D, M d',
|
||||
dateFormat: 'yy-mm-dd', firstDay: 1,
|
||||
initStatus: 'Wybierz datę', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['pl']);
|
||||
});
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Brazilian initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Leonildo Costa Silva (leocsilva@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['pt-BR'] = {clearText: 'Limpar', clearStatus: '',
|
||||
closeText: 'Fechar', closeStatus: '',
|
||||
prevText: '<Anterior', prevStatus: '',
|
||||
nextText: 'Próximo>', nextStatus: '',
|
||||
currentText: 'Hoje', currentStatus: '',
|
||||
monthNames: ['Janeiro','Fevereiro','Março','Abril','Maio','Junho',
|
||||
'Julho','Agosto','Setembro','Outubro','Novembro','Dezembro'],
|
||||
monthNamesShort: ['Jan','Fev','Mar','Abr','Mai','Jun',
|
||||
'Jul','Ago','Set','Out','Nov','Dez'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Sm', weekStatus: '',
|
||||
dayNames: ['Domingo','Segunda-feira','Terça-feira','Quarta-feira','Quinta-feira','Sexta-feira','Sabado'],
|
||||
dayNamesShort: ['Dom','Seg','Ter','Qua','Qui','Sex','Sab'],
|
||||
dayNamesMin: ['Dom','Seg','Ter','Qua','Qui','Sex','Sab'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd/mm/yy', firstDay: 0,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['pt-BR']);
|
||||
/* Brazilian initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Leonildo Costa Silva (leocsilva@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['pt-BR'] = {clearText: 'Limpar', clearStatus: '',
|
||||
closeText: 'Fechar', closeStatus: '',
|
||||
prevText: '<Anterior', prevStatus: '',
|
||||
nextText: 'Próximo>', nextStatus: '',
|
||||
currentText: 'Hoje', currentStatus: '',
|
||||
monthNames: ['Janeiro','Fevereiro','Março','Abril','Maio','Junho',
|
||||
'Julho','Agosto','Setembro','Outubro','Novembro','Dezembro'],
|
||||
monthNamesShort: ['Jan','Fev','Mar','Abr','Mai','Jun',
|
||||
'Jul','Ago','Set','Out','Nov','Dez'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Sm', weekStatus: '',
|
||||
dayNames: ['Domingo','Segunda-feira','Terça-feira','Quarta-feira','Quinta-feira','Sexta-feira','Sabado'],
|
||||
dayNamesShort: ['Dom','Seg','Ter','Qua','Qui','Sex','Sab'],
|
||||
dayNamesMin: ['Dom','Seg','Ter','Qua','Qui','Sex','Sab'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd/mm/yy', firstDay: 0,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['pt-BR']);
|
||||
});
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Romanian initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Edmond L. (ll_edmond@walla.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['ro'] = {clearText: 'Curat', clearStatus: 'Sterge data curenta',
|
||||
closeText: 'Inchide', closeStatus: 'Inchide fara schimbare',
|
||||
prevText: '<Anterior', prevStatus: 'Arata luna trecuta',
|
||||
nextText: 'Urmator>', nextStatus: 'Arata luna urmatoare',
|
||||
currentText: 'Azi', currentStatus: 'Arata luna curenta',
|
||||
monthNames: ['Ianuarie','Februarie','Martie','Aprilie','Mai','Junie',
|
||||
'Julie','August','Septembrie','Octobrie','Noiembrie','Decembrie'],
|
||||
monthNamesShort: ['Ian', 'Feb', 'Mar', 'Apr', 'Mai', 'Jun',
|
||||
'Jul', 'Aug', 'Sep', 'Oct', 'Noi', 'Dec'],
|
||||
monthStatus: 'Arata o luna diferita', yearStatus: 'Arat un an diferit',
|
||||
weekHeader: 'Sapt', weekStatus: 'Saptamana anului',
|
||||
dayNames: ['Duminica', 'Luni', 'Marti', 'Miercuri', 'Joi', 'Vineri', 'Sambata'],
|
||||
dayNamesShort: ['Dum', 'Lun', 'Mar', 'Mie', 'Joi', 'Vin', 'Sam'],
|
||||
dayNamesMin: ['Du','Lu','Ma','Mi','Jo','Vi','Sa'],
|
||||
dayStatus: 'Seteaza DD ca prima saptamana zi', dateStatus: 'Selecteaza D, M d',
|
||||
dateFormat: 'mm/dd/yy', firstDay: 0,
|
||||
initStatus: 'Selecteaza o data', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['ro']);
|
||||
});
|
||||
/* Romanian initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Edmond L. (ll_edmond@walla.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['ro'] = {clearText: 'Curat', clearStatus: 'Sterge data curenta',
|
||||
closeText: 'Inchide', closeStatus: 'Inchide fara schimbare',
|
||||
prevText: '<Anterior', prevStatus: 'Arata luna trecuta',
|
||||
nextText: 'Urmator>', nextStatus: 'Arata luna urmatoare',
|
||||
currentText: 'Azi', currentStatus: 'Arata luna curenta',
|
||||
monthNames: ['Ianuarie','Februarie','Martie','Aprilie','Mai','Junie',
|
||||
'Julie','August','Septembrie','Octobrie','Noiembrie','Decembrie'],
|
||||
monthNamesShort: ['Ian', 'Feb', 'Mar', 'Apr', 'Mai', 'Jun',
|
||||
'Jul', 'Aug', 'Sep', 'Oct', 'Noi', 'Dec'],
|
||||
monthStatus: 'Arata o luna diferita', yearStatus: 'Arat un an diferit',
|
||||
weekHeader: 'Sapt', weekStatus: 'Saptamana anului',
|
||||
dayNames: ['Duminica', 'Luni', 'Marti', 'Miercuri', 'Joi', 'Vineri', 'Sambata'],
|
||||
dayNamesShort: ['Dum', 'Lun', 'Mar', 'Mie', 'Joi', 'Vin', 'Sam'],
|
||||
dayNamesMin: ['Du','Lu','Ma','Mi','Jo','Vi','Sa'],
|
||||
dayStatus: 'Seteaza DD ca prima saptamana zi', dateStatus: 'Selecteaza D, M d',
|
||||
dateFormat: 'mm/dd/yy', firstDay: 0,
|
||||
initStatus: 'Selecteaza o data', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['ro']);
|
||||
});
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Russian (UTF-8) initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Andrew Stromnov (stromnov@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['ru'] = {clearText: 'Очистить', clearStatus: '',
|
||||
closeText: 'Закрыть', closeStatus: '',
|
||||
prevText: '<Пред', prevStatus: '',
|
||||
nextText: 'След>', nextStatus: '',
|
||||
currentText: 'Сегодня', currentStatus: '',
|
||||
monthNames: ['Январь','Февраль','Март','Апрель','Май','Июнь',
|
||||
'Июль','Август','Сентябрь','Октябрь','Ноябрь','Декабрь'],
|
||||
monthNamesShort: ['Янв','Фев','Мар','Апр','Май','Июн',
|
||||
'Июл','Авг','Сен','Окт','Ноя','Дек'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Не', weekStatus: '',
|
||||
dayNames: ['воскресенье','понедельник','вторник','среда','четверг','пятница','суббота'],
|
||||
dayNamesShort: ['вск','пнд','втр','срд','чтв','птн','сбт'],
|
||||
dayNamesMin: ['Вс','Пн','Вт','Ср','Чт','Пт','Сб'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd.mm.yy', firstDay: 1,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['ru']);
|
||||
/* Russian (UTF-8) initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Andrew Stromnov (stromnov@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['ru'] = {clearText: 'Очистить', clearStatus: '',
|
||||
closeText: 'Закрыть', closeStatus: '',
|
||||
prevText: '<Пред', prevStatus: '',
|
||||
nextText: 'След>', nextStatus: '',
|
||||
currentText: 'Сегодня', currentStatus: '',
|
||||
monthNames: ['Январь','Февраль','Март','Апрель','Май','Июнь',
|
||||
'Июль','Август','Сентябрь','Октябрь','Ноябрь','Декабрь'],
|
||||
monthNamesShort: ['Янв','Фев','Мар','Апр','Май','Июн',
|
||||
'Июл','Авг','Сен','Окт','Ноя','Дек'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Не', weekStatus: '',
|
||||
dayNames: ['воскресенье','понедельник','вторник','среда','четверг','пятница','суббота'],
|
||||
dayNamesShort: ['вск','пнд','втр','срд','чтв','птн','сбт'],
|
||||
dayNamesMin: ['Вс','Пн','Вт','Ср','Чт','Пт','Сб'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd.mm.yy', firstDay: 1,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['ru']);
|
||||
});
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Slovak initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Vojtech Rinik (vojto@hmm.sk). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['sk'] = {clearText: 'Zmazať', clearStatus: '',
|
||||
closeText: 'Zavrieť', closeStatus: '',
|
||||
prevText: '<Predchádzajúci', prevStatus: '',
|
||||
nextText: 'Nasledujúci>', nextStatus: '',
|
||||
currentText: 'Dnes', currentStatus: '',
|
||||
monthNames: ['Január','Február','Marec','Apríl','Máj','Jún',
|
||||
'Júl','August','September','Október','November','December'],
|
||||
monthNamesShort: ['Jan','Feb','Mar','Apr','Máj','Jún',
|
||||
'Júl','Aug','Sep','Okt','Nov','Dec'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Ty', weekStatus: '',
|
||||
dayNames: ['Nedel\'a','Pondelok','Utorok','Streda','Štvrtok','Piatok','Sobota'],
|
||||
dayNamesShort: ['Ned','Pon','Uto','Str','Štv','Pia','Sob'],
|
||||
dayNamesMin: ['Ne','Po','Ut','St','Št','Pia','So'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd.mm.yy', firstDay: 0,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['sk']);
|
||||
});
|
||||
/* Slovak initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Vojtech Rinik (vojto@hmm.sk). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['sk'] = {clearText: 'Zmazať', clearStatus: '',
|
||||
closeText: 'Zavrieť', closeStatus: '',
|
||||
prevText: '<Predchádzajúci', prevStatus: '',
|
||||
nextText: 'Nasledujúci>', nextStatus: '',
|
||||
currentText: 'Dnes', currentStatus: '',
|
||||
monthNames: ['Január','Február','Marec','Apríl','Máj','Jún',
|
||||
'Júl','August','September','Október','November','December'],
|
||||
monthNamesShort: ['Jan','Feb','Mar','Apr','Máj','Jún',
|
||||
'Júl','Aug','Sep','Okt','Nov','Dec'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Ty', weekStatus: '',
|
||||
dayNames: ['Nedel\'a','Pondelok','Utorok','Streda','Štvrtok','Piatok','Sobota'],
|
||||
dayNamesShort: ['Ned','Pon','Uto','Str','Štv','Pia','Sob'],
|
||||
dayNamesMin: ['Ne','Po','Ut','St','Št','Pia','So'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd.mm.yy', firstDay: 0,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['sk']);
|
||||
});
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Swedish initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Anders Ekdahl ( anders@nomadiz.se). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['sv'] = {clearText: 'Rensa', clearStatus: '',
|
||||
closeText: 'Stäng', closeStatus: '',
|
||||
prevText: '«Förra', prevStatus: '',
|
||||
nextText: 'Nästa»', nextStatus: '',
|
||||
currentText: 'Idag', currentStatus: '',
|
||||
monthNames: ['Januari','Februari','Mars','April','Maj','Juni',
|
||||
'Juli','Augusti','September','Oktober','November','December'],
|
||||
monthNamesShort: ['Jan','Feb','Mar','Apr','Maj','Jun',
|
||||
'Jul','Aug','Sep','Okt','Nov','Dec'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Ve', weekStatus: '',
|
||||
dayNamesShort: ['Sön','Mån','Tis','Ons','Tor','Fre','Lör'],
|
||||
dayNames: ['Söndag','Måndag','Tisdag','Onsdag','Torsdag','Fredag','Lördag'],
|
||||
dayNamesMin: ['Sö','Må','Ti','On','To','Fr','Lö'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'yy-mm-dd', firstDay: 0,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['sv']);
|
||||
});
|
||||
/* Swedish initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Anders Ekdahl ( anders@nomadiz.se). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['sv'] = {clearText: 'Rensa', clearStatus: '',
|
||||
closeText: 'Stäng', closeStatus: '',
|
||||
prevText: '«Förra', prevStatus: '',
|
||||
nextText: 'Nästa»', nextStatus: '',
|
||||
currentText: 'Idag', currentStatus: '',
|
||||
monthNames: ['Januari','Februari','Mars','April','Maj','Juni',
|
||||
'Juli','Augusti','September','Oktober','November','December'],
|
||||
monthNamesShort: ['Jan','Feb','Mar','Apr','Maj','Jun',
|
||||
'Jul','Aug','Sep','Okt','Nov','Dec'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Ve', weekStatus: '',
|
||||
dayNamesShort: ['Sön','Mån','Tis','Ons','Tor','Fre','Lör'],
|
||||
dayNames: ['Söndag','Måndag','Tisdag','Onsdag','Torsdag','Fredag','Lördag'],
|
||||
dayNamesMin: ['Sö','Må','Ti','On','To','Fr','Lö'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'yy-mm-dd', firstDay: 0,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['sv']);
|
||||
});
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Thai initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by pipo (pipo@sixhead.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['th'] = {clearText: 'ลบ', clearStatus: '',
|
||||
closeText: 'ปิด', closeStatus: '',
|
||||
prevText: '« ย้อน', prevStatus: '',
|
||||
nextText: 'ถัดไป »', nextStatus: '',
|
||||
currentText: 'วันนี้', currentStatus: '',
|
||||
monthNames: ['มกราคม','กุมภาพันธ์','มีนาคม','เมษายน','พฤษภาคม','มิถุนายน',
|
||||
'กรกฏาคม','สิงหาคม','กันยายน','ตุลาคม','พฤศจิกายน','ธันวาคม'],
|
||||
monthNamesShort: ['ม.ค.','ก.พ.','มี.ค.','เม.ย.','พ.ค.','มิ.ย.',
|
||||
'ก.ค.','ส.ค.','ก.ย.','ต.ค.','พ.ย.','ธ.ค.'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Sm', weekStatus: '',
|
||||
dayNames: ['อาทิตย์','จันทร์','อังคาร','พุธ','พฤหัสบดี','ศุกร์','เสาร์'],
|
||||
dayNamesShort: ['อา.','จ.','อ.','พ.','พฤ.','ศ.','ส.'],
|
||||
dayNamesMin: ['อา.','จ.','อ.','พ.','พฤ.','ศ.','ส.'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd/mm/yy', firstDay: 0,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['th']);
|
||||
/* Thai initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by pipo (pipo@sixhead.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['th'] = {clearText: 'ลบ', clearStatus: '',
|
||||
closeText: 'ปิด', closeStatus: '',
|
||||
prevText: '« ย้อน', prevStatus: '',
|
||||
nextText: 'ถัดไป »', nextStatus: '',
|
||||
currentText: 'วันนี้', currentStatus: '',
|
||||
monthNames: ['มกราคม','กุมภาพันธ์','มีนาคม','เมษายน','พฤษภาคม','มิถุนายน',
|
||||
'กรกฏาคม','สิงหาคม','กันยายน','ตุลาคม','พฤศจิกายน','ธันวาคม'],
|
||||
monthNamesShort: ['ม.ค.','ก.พ.','มี.ค.','เม.ย.','พ.ค.','มิ.ย.',
|
||||
'ก.ค.','ส.ค.','ก.ย.','ต.ค.','พ.ย.','ธ.ค.'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Sm', weekStatus: '',
|
||||
dayNames: ['อาทิตย์','จันทร์','อังคาร','พุธ','พฤหัสบดี','ศุกร์','เสาร์'],
|
||||
dayNamesShort: ['อา.','จ.','อ.','พ.','พฤ.','ศ.','ส.'],
|
||||
dayNamesMin: ['อา.','จ.','อ.','พ.','พฤ.','ศ.','ส.'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd/mm/yy', firstDay: 0,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['th']);
|
||||
});
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Turkish initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Izzet Emre Erkan (kara@karalamalar.net). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['tr'] = {clearText: 'temizle', clearStatus: 'geçerli tarihi temizler',
|
||||
closeText: 'kapat', closeStatus: 'sadece göstergeyi kapat',
|
||||
prevText: '<geri', prevStatus: 'önceki ayı göster',
|
||||
nextText: 'ileri>', nextStatus: 'sonraki ayı göster',
|
||||
currentText: 'bugün', currentStatus: '',
|
||||
monthNames: ['Ocak','Şubat','Mart','Nisan','Mayıs','Haziran',
|
||||
'Temmuz','Ağustos','Eylül','Ekim','Kasım','Aralık'],
|
||||
monthNamesShort: ['Oca','Şub','Mar','Nis','May','Haz',
|
||||
'Tem','Ağu','Eyl','Eki','Kas','Ara'],
|
||||
monthStatus: 'başka ay', yearStatus: 'başka yıl',
|
||||
weekHeader: 'Hf', weekStatus: 'Ayın haftaları',
|
||||
dayNames: ['Pazar','Pazartesi','Salı','Çarşamba','Perşembe','Cuma','Cumartesi'],
|
||||
dayNamesShort: ['Pz','Pt','Sa','Ça','Pe','Cu','Ct'],
|
||||
dayNamesMin: ['Pz','Pt','Sa','Ça','Pe','Cu','Ct'],
|
||||
dayStatus: 'Haftanın ilk gününü belirleyin', dateStatus: 'D, M d seçiniz',
|
||||
dateFormat: 'dd.mm.yy', firstDay: 1,
|
||||
initStatus: 'Bir tarih seçiniz', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['tr']);
|
||||
/* Turkish initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Izzet Emre Erkan (kara@karalamalar.net). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['tr'] = {clearText: 'temizle', clearStatus: 'geçerli tarihi temizler',
|
||||
closeText: 'kapat', closeStatus: 'sadece göstergeyi kapat',
|
||||
prevText: '<geri', prevStatus: 'önceki ayı göster',
|
||||
nextText: 'ileri>', nextStatus: 'sonraki ayı göster',
|
||||
currentText: 'bugün', currentStatus: '',
|
||||
monthNames: ['Ocak','Şubat','Mart','Nisan','Mayıs','Haziran',
|
||||
'Temmuz','Ağustos','Eylül','Ekim','Kasım','Aralık'],
|
||||
monthNamesShort: ['Oca','Şub','Mar','Nis','May','Haz',
|
||||
'Tem','Ağu','Eyl','Eki','Kas','Ara'],
|
||||
monthStatus: 'başka ay', yearStatus: 'başka yıl',
|
||||
weekHeader: 'Hf', weekStatus: 'Ayın haftaları',
|
||||
dayNames: ['Pazar','Pazartesi','Salı','Çarşamba','Perşembe','Cuma','Cumartesi'],
|
||||
dayNamesShort: ['Pz','Pt','Sa','Ça','Pe','Cu','Ct'],
|
||||
dayNamesMin: ['Pz','Pt','Sa','Ça','Pe','Cu','Ct'],
|
||||
dayStatus: 'Haftanın ilk gününü belirleyin', dateStatus: 'D, M d seçiniz',
|
||||
dateFormat: 'dd.mm.yy', firstDay: 1,
|
||||
initStatus: 'Bir tarih seçiniz', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['tr']);
|
||||
});
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Ukrainian (UTF-8) initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Maxim Drogobitskiy (maxdao@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['ua'] = {clearText: 'Очистити', clearStatus: '',
|
||||
closeText: 'Закрити', closeStatus: '',
|
||||
prevText: '<<', prevStatus: '',
|
||||
nextText: '>>', nextStatus: '',
|
||||
currentText: 'Сьогодні', currentStatus: '',
|
||||
monthNames: ['Січень','Лютий','Березень','Квітень','Травень','Червень',
|
||||
'Липень','Серпень','Вересень','Жовтень','Листопад','Грудень'],
|
||||
monthNamesShort: ['Січ','Лют','Бер','Кві','Тра','Чер',
|
||||
'Лип','Сер','Вер','Жов','Лис','Гру'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Не', weekStatus: '',
|
||||
dayNames: ['неділя','понеділок','вівторок','середа','четвер','пятниця','суббота'],
|
||||
dayNamesShort: ['нед','пнд','вів','срд','чтв','птн','сбт'],
|
||||
dayNamesMin: ['Нд','Пн','Вт','Ср','Чт','Пт','Сб'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd.mm.yy', firstDay: 1,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['ua']);
|
||||
/* Ukrainian (UTF-8) initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Maxim Drogobitskiy (maxdao@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['ua'] = {clearText: 'Очистити', clearStatus: '',
|
||||
closeText: 'Закрити', closeStatus: '',
|
||||
prevText: '<<', prevStatus: '',
|
||||
nextText: '>>', nextStatus: '',
|
||||
currentText: 'Сьогодні', currentStatus: '',
|
||||
monthNames: ['Січень','Лютий','Березень','Квітень','Травень','Червень',
|
||||
'Липень','Серпень','Вересень','Жовтень','Листопад','Грудень'],
|
||||
monthNamesShort: ['Січ','Лют','Бер','Кві','Тра','Чер',
|
||||
'Лип','Сер','Вер','Жов','Лис','Гру'],
|
||||
monthStatus: '', yearStatus: '',
|
||||
weekHeader: 'Не', weekStatus: '',
|
||||
dayNames: ['неділя','понеділок','вівторок','середа','четвер','пятниця','суббота'],
|
||||
dayNamesShort: ['нед','пнд','вів','срд','чтв','птн','сбт'],
|
||||
dayNamesMin: ['Нд','Пн','Вт','Ср','Чт','Пт','Сб'],
|
||||
dayStatus: 'DD', dateStatus: 'D, M d',
|
||||
dateFormat: 'dd.mm.yy', firstDay: 1,
|
||||
initStatus: '', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['ua']);
|
||||
});
|
||||
@@ -1,22 +1,22 @@
|
||||
/* Chinese initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Cloudream (cloudream@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['zh-CN'] = {clearText: '清除', clearStatus: '清除已选日期',
|
||||
closeText: '关闭', closeStatus: '不改变当前选择',
|
||||
prevText: '<上月', prevStatus: '显示上月',
|
||||
nextText: '下月>', nextStatus: '显示下月',
|
||||
currentText: '今天', currentStatus: '显示本月',
|
||||
monthNames: ['一月','二月','三月','四月','五月','六月',
|
||||
'七月','八月','九月','十月','十一月','十二月'],
|
||||
monthNamesShort: ['一','二','三','四','五','六',
|
||||
'七','八','九','十','十一','十二'],
|
||||
monthStatus: '选择月份', yearStatus: '选择年份',
|
||||
weekHeader: '周', weekStatus: '年内周次',
|
||||
dayNames: ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'],
|
||||
dayNamesShort: ['周日','周一','周二','周三','周四','周五','周六'],
|
||||
dayNamesMin: ['日','一','二','三','四','五','六'],
|
||||
dayStatus: '设置 DD 为一周起始', dateStatus: '选择 m月 d日, DD',
|
||||
dateFormat: 'yy-mm-dd', firstDay: 1,
|
||||
initStatus: '请选择日期', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['zh-CN']);
|
||||
});
|
||||
/* Chinese initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Cloudream (cloudream@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['zh-CN'] = {clearText: '清除', clearStatus: '清除已选日期',
|
||||
closeText: '关闭', closeStatus: '不改变当前选择',
|
||||
prevText: '<上月', prevStatus: '显示上月',
|
||||
nextText: '下月>', nextStatus: '显示下月',
|
||||
currentText: '今天', currentStatus: '显示本月',
|
||||
monthNames: ['一月','二月','三月','四月','五月','六月',
|
||||
'七月','八月','九月','十月','十一月','十二月'],
|
||||
monthNamesShort: ['一','二','三','四','五','六',
|
||||
'七','八','九','十','十一','十二'],
|
||||
monthStatus: '选择月份', yearStatus: '选择年份',
|
||||
weekHeader: '周', weekStatus: '年内周次',
|
||||
dayNames: ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'],
|
||||
dayNamesShort: ['周日','周一','周二','周三','周四','周五','周六'],
|
||||
dayNamesMin: ['日','一','二','三','四','五','六'],
|
||||
dayStatus: '设置 DD 为一周起始', dateStatus: '选择 m月 d日, DD',
|
||||
dateFormat: 'yy-mm-dd', firstDay: 1,
|
||||
initStatus: '请选择日期', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['zh-CN']);
|
||||
});
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
/* Chinese initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Ressol (ressol@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['zh-TW'] = {
|
||||
clearText: '清除', clearStatus: '清除已選日期',
|
||||
closeText: '關閉', closeStatus: '不改變目前的選擇',
|
||||
prevText: '<上月', prevStatus: '顯示上月',
|
||||
nextText: '下月>', nextStatus: '顯示下月',
|
||||
currentText: '今天', currentStatus: '顯示本月',
|
||||
monthNames: ['一月','二月','三月','四月','五月','六月',
|
||||
'七月','八月','九月','十月','十一月','十二月'],
|
||||
monthNamesShort: ['一','二','三','四','五','六',
|
||||
'七','八','九','十','十一','十二'],
|
||||
monthStatus: '選擇月份', yearStatus: '選擇年份',
|
||||
weekHeader: '周', weekStatus: '年內周次',
|
||||
dayNames: ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'],
|
||||
dayNamesShort: ['周日','周一','周二','周三','周四','周五','周六'],
|
||||
dayNamesMin: ['日','一','二','三','四','五','六'],
|
||||
dayStatus: '設定 DD 為一周起始', dateStatus: '選擇 m月 d日, DD',
|
||||
dateFormat: 'yy/mm/dd', firstDay: 1,
|
||||
initStatus: '請選擇日期', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['zh-TW']);
|
||||
});
|
||||
/* Chinese initialisation for the jQuery UI date picker plugin. */
|
||||
/* Written by Ressol (ressol@gmail.com). */
|
||||
jQuery(function($){
|
||||
$.datepicker.regional['zh-TW'] = {
|
||||
clearText: '清除', clearStatus: '清除已選日期',
|
||||
closeText: '關閉', closeStatus: '不改變目前的選擇',
|
||||
prevText: '<上月', prevStatus: '顯示上月',
|
||||
nextText: '下月>', nextStatus: '顯示下月',
|
||||
currentText: '今天', currentStatus: '顯示本月',
|
||||
monthNames: ['一月','二月','三月','四月','五月','六月',
|
||||
'七月','八月','九月','十月','十一月','十二月'],
|
||||
monthNamesShort: ['一','二','三','四','五','六',
|
||||
'七','八','九','十','十一','十二'],
|
||||
monthStatus: '選擇月份', yearStatus: '選擇年份',
|
||||
weekHeader: '周', weekStatus: '年內周次',
|
||||
dayNames: ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'],
|
||||
dayNamesShort: ['周日','周一','周二','周三','周四','周五','周六'],
|
||||
dayNamesMin: ['日','一','二','三','四','五','六'],
|
||||
dayStatus: '設定 DD 為一周起始', dateStatus: '選擇 m月 d日, DD',
|
||||
dateFormat: 'yy/mm/dd', firstDay: 1,
|
||||
initStatus: '請選擇日期', isRTL: false};
|
||||
$.datepicker.setDefaults($.datepicker.regional['zh-TW']);
|
||||
});
|
||||
|
||||
@@ -1,302 +1,302 @@
|
||||
/*
|
||||
* jQuery UI Accordion
|
||||
*
|
||||
* Copyright (c) 2007, 2008 Jörn Zaefferer
|
||||
* Dual licensed under the MIT (MIT-LICENSE.txt)
|
||||
* and GPL (GPL-LICENSE.txt) licenses.
|
||||
*
|
||||
* http://docs.jquery.com/UI/Accordion
|
||||
*
|
||||
* Depends:
|
||||
* ui.core.js
|
||||
*
|
||||
* Revision: $Id: ui.accordion.js 5656 2008-05-21 19:35:33Z braeker $
|
||||
*/
|
||||
;(function($) {
|
||||
|
||||
$.widget("ui.accordion", {
|
||||
init: function() {
|
||||
var options = this.options;
|
||||
|
||||
if ( options.navigation ) {
|
||||
var current = this.element.find("a").filter(options.navigationFilter);
|
||||
if ( current.length ) {
|
||||
if ( current.filter(options.header).length ) {
|
||||
options.active = current;
|
||||
} else {
|
||||
options.active = current.parent().parent().prev();
|
||||
current.addClass("current");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// calculate active if not specified, using the first header
|
||||
options.headers = this.element.find(options.header);
|
||||
options.active = findActive(options.headers, options.active);
|
||||
|
||||
// IE7-/Win - Extra vertical space in Lists fixed
|
||||
if ($.browser.msie) {
|
||||
this.element.find('a').css('zoom', '1');
|
||||
}
|
||||
|
||||
if (!this.element.hasClass("ui-accordion")) {
|
||||
this.element.addClass("ui-accordion");
|
||||
$("<span class='ui-accordion-left'/>").insertBefore(options.headers);
|
||||
$("<span class='ui-accordion-right'/>").appendTo(options.headers);
|
||||
options.headers.addClass("ui-accordion-header").attr("tabindex", "0");
|
||||
}
|
||||
|
||||
var maxHeight;
|
||||
if ( options.fillSpace ) {
|
||||
maxHeight = this.element.parent().height();
|
||||
options.headers.each(function() {
|
||||
maxHeight -= $(this).outerHeight();
|
||||
});
|
||||
var maxPadding = 0;
|
||||
options.headers.next().each(function() {
|
||||
maxPadding = Math.max(maxPadding, $(this).innerHeight() - $(this).height());
|
||||
}).height(maxHeight - maxPadding);
|
||||
} else if ( options.autoHeight ) {
|
||||
maxHeight = 0;
|
||||
options.headers.next().each(function() {
|
||||
maxHeight = Math.max(maxHeight, $(this).outerHeight());
|
||||
}).height(maxHeight);
|
||||
}
|
||||
|
||||
options.headers
|
||||
.not(options.active || "")
|
||||
.next()
|
||||
.hide();
|
||||
options.active.parent().andSelf().addClass(options.selectedClass);
|
||||
|
||||
if (options.event) {
|
||||
this.element.bind((options.event) + ".accordion", clickHandler);
|
||||
}
|
||||
},
|
||||
activate: function(index) {
|
||||
// call clickHandler with custom event
|
||||
clickHandler.call(this.element[0], {
|
||||
target: findActive( this.options.headers, index )[0]
|
||||
});
|
||||
},
|
||||
destroy: function() {
|
||||
this.options.headers.next().css("display", "");
|
||||
if ( this.options.fillSpace || this.options.autoHeight ) {
|
||||
this.options.headers.next().css("height", "");
|
||||
}
|
||||
$.removeData(this.element[0], "accordion");
|
||||
this.element.removeClass("ui-accordion").unbind(".accordion");
|
||||
}
|
||||
});
|
||||
|
||||
function scopeCallback(callback, scope) {
|
||||
return function() {
|
||||
return callback.apply(scope, arguments);
|
||||
};
|
||||
};
|
||||
|
||||
function completed(cancel) {
|
||||
// if removed while animated data can be empty
|
||||
if (!$.data(this, "accordion")) {
|
||||
return;
|
||||
}
|
||||
|
||||
var instance = $.data(this, "accordion");
|
||||
var options = instance.options;
|
||||
options.running = cancel ? 0 : --options.running;
|
||||
if ( options.running ) {
|
||||
return;
|
||||
}
|
||||
if ( options.clearStyle ) {
|
||||
options.toShow.add(options.toHide).css({
|
||||
height: "",
|
||||
overflow: ""
|
||||
});
|
||||
}
|
||||
$(this).triggerHandler("accordionchange", [options.data], options.change);
|
||||
}
|
||||
|
||||
function toggle(toShow, toHide, data, clickedActive, down) {
|
||||
var options = $.data(this, "accordion").options;
|
||||
options.toShow = toShow;
|
||||
options.toHide = toHide;
|
||||
options.data = data;
|
||||
var complete = scopeCallback(completed, this);
|
||||
|
||||
// count elements to animate
|
||||
options.running = toHide.size() === 0 ? toShow.size() : toHide.size();
|
||||
|
||||
if ( options.animated ) {
|
||||
if ( !options.alwaysOpen && clickedActive ) {
|
||||
$.ui.accordion.animations[options.animated]({
|
||||
toShow: jQuery([]),
|
||||
toHide: toHide,
|
||||
complete: complete,
|
||||
down: down,
|
||||
autoHeight: options.autoHeight
|
||||
});
|
||||
} else {
|
||||
$.ui.accordion.animations[options.animated]({
|
||||
toShow: toShow,
|
||||
toHide: toHide,
|
||||
complete: complete,
|
||||
down: down,
|
||||
autoHeight: options.autoHeight
|
||||
});
|
||||
}
|
||||
} else {
|
||||
if ( !options.alwaysOpen && clickedActive ) {
|
||||
toShow.toggle();
|
||||
} else {
|
||||
toHide.hide();
|
||||
toShow.show();
|
||||
}
|
||||
complete(true);
|
||||
}
|
||||
}
|
||||
|
||||
function clickHandler(event) {
|
||||
var options = $.data(this, "accordion").options;
|
||||
if (options.disabled) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// called only when using activate(false) to close all parts programmatically
|
||||
if ( !event.target && !options.alwaysOpen ) {
|
||||
options.active.parent().andSelf().toggleClass(options.selectedClass);
|
||||
var toHide = options.active.next(),
|
||||
data = {
|
||||
instance: this,
|
||||
options: options,
|
||||
newHeader: jQuery([]),
|
||||
oldHeader: options.active,
|
||||
newContent: jQuery([]),
|
||||
oldContent: toHide
|
||||
},
|
||||
toShow = (options.active = $([]));
|
||||
toggle.call(this, toShow, toHide, data );
|
||||
return false;
|
||||
}
|
||||
// get the click target
|
||||
var clicked = $(event.target);
|
||||
|
||||
// due to the event delegation model, we have to check if one
|
||||
// of the parent elements is our actual header, and find that
|
||||
if ( clicked.parents(options.header).length ) {
|
||||
while ( !clicked.is(options.header) ) {
|
||||
clicked = clicked.parent();
|
||||
}
|
||||
}
|
||||
|
||||
var clickedActive = clicked[0] == options.active[0];
|
||||
|
||||
// if animations are still active, or the active header is the target, ignore click
|
||||
if (options.running || (options.alwaysOpen && clickedActive)) {
|
||||
return false;
|
||||
}
|
||||
if (!clicked.is(options.header)) {
|
||||
return;
|
||||
}
|
||||
|
||||
// switch classes
|
||||
options.active.parent().andSelf().toggleClass(options.selectedClass);
|
||||
if ( !clickedActive ) {
|
||||
clicked.parent().andSelf().addClass(options.selectedClass);
|
||||
}
|
||||
|
||||
// find elements to show and hide
|
||||
var toShow = clicked.next(),
|
||||
toHide = options.active.next(),
|
||||
//data = [clicked, options.active, toShow, toHide],
|
||||
data = {
|
||||
instance: this,
|
||||
options: options,
|
||||
newHeader: clicked,
|
||||
oldHeader: options.active,
|
||||
newContent: toShow,
|
||||
oldContent: toHide
|
||||
},
|
||||
down = options.headers.index( options.active[0] ) > options.headers.index( clicked[0] );
|
||||
|
||||
options.active = clickedActive ? $([]) : clicked;
|
||||
toggle.call(this, toShow, toHide, data, clickedActive, down );
|
||||
|
||||
return false;
|
||||
};
|
||||
|
||||
function findActive(headers, selector) {
|
||||
return selector != undefined
|
||||
? typeof selector == "number"
|
||||
? headers.filter(":eq(" + selector + ")")
|
||||
: headers.not(headers.not(selector))
|
||||
: selector === false
|
||||
? $([])
|
||||
: headers.filter(":eq(0)");
|
||||
}
|
||||
|
||||
$.extend($.ui.accordion, {
|
||||
defaults: {
|
||||
selectedClass: "selected",
|
||||
alwaysOpen: true,
|
||||
animated: 'slide',
|
||||
event: "click",
|
||||
header: "a",
|
||||
autoHeight: true,
|
||||
running: 0,
|
||||
navigationFilter: function() {
|
||||
return this.href.toLowerCase() == location.href.toLowerCase();
|
||||
}
|
||||
},
|
||||
animations: {
|
||||
slide: function(options, additions) {
|
||||
options = $.extend({
|
||||
easing: "swing",
|
||||
duration: 300
|
||||
}, options, additions);
|
||||
if ( !options.toHide.size() ) {
|
||||
options.toShow.animate({height: "show"}, options);
|
||||
return;
|
||||
}
|
||||
var hideHeight = options.toHide.height(),
|
||||
showHeight = options.toShow.height(),
|
||||
difference = showHeight / hideHeight;
|
||||
options.toShow.css({ height: 0, overflow: 'hidden' }).show();
|
||||
options.toHide.filter(":hidden").each(options.complete).end().filter(":visible").animate({height:"hide"},{
|
||||
step: function(now) {
|
||||
var current = (hideHeight - now) * difference;
|
||||
if ($.browser.msie || $.browser.opera) {
|
||||
current = Math.ceil(current);
|
||||
}
|
||||
options.toShow.height( current );
|
||||
},
|
||||
duration: options.duration,
|
||||
easing: options.easing,
|
||||
complete: function() {
|
||||
if ( !options.autoHeight ) {
|
||||
options.toShow.css("height", "auto");
|
||||
}
|
||||
options.complete();
|
||||
}
|
||||
});
|
||||
},
|
||||
bounceslide: function(options) {
|
||||
this.slide(options, {
|
||||
easing: options.down ? "bounceout" : "swing",
|
||||
duration: options.down ? 1000 : 200
|
||||
});
|
||||
},
|
||||
easeslide: function(options) {
|
||||
this.slide(options, {
|
||||
easing: "easeinout",
|
||||
duration: 700
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// deprecated, use accordion("activate", index) instead
|
||||
$.fn.activate = function(index) {
|
||||
return this.accordion("activate", index);
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
/*
|
||||
* jQuery UI Accordion
|
||||
*
|
||||
* Copyright (c) 2007, 2008 Jörn Zaefferer
|
||||
* Dual licensed under the MIT (MIT-LICENSE.txt)
|
||||
* and GPL (GPL-LICENSE.txt) licenses.
|
||||
*
|
||||
* http://docs.jquery.com/UI/Accordion
|
||||
*
|
||||
* Depends:
|
||||
* ui.core.js
|
||||
*
|
||||
* Revision: $Id: ui.accordion.js 5656 2008-05-21 19:35:33Z braeker $
|
||||
*/
|
||||
;(function($) {
|
||||
|
||||
$.widget("ui.accordion", {
|
||||
init: function() {
|
||||
var options = this.options;
|
||||
|
||||
if ( options.navigation ) {
|
||||
var current = this.element.find("a").filter(options.navigationFilter);
|
||||
if ( current.length ) {
|
||||
if ( current.filter(options.header).length ) {
|
||||
options.active = current;
|
||||
} else {
|
||||
options.active = current.parent().parent().prev();
|
||||
current.addClass("current");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// calculate active if not specified, using the first header
|
||||
options.headers = this.element.find(options.header);
|
||||
options.active = findActive(options.headers, options.active);
|
||||
|
||||
// IE7-/Win - Extra vertical space in Lists fixed
|
||||
if ($.browser.msie) {
|
||||
this.element.find('a').css('zoom', '1');
|
||||
}
|
||||
|
||||
if (!this.element.hasClass("ui-accordion")) {
|
||||
this.element.addClass("ui-accordion");
|
||||
$("<span class='ui-accordion-left'/>").insertBefore(options.headers);
|
||||
$("<span class='ui-accordion-right'/>").appendTo(options.headers);
|
||||
options.headers.addClass("ui-accordion-header").attr("tabindex", "0");
|
||||
}
|
||||
|
||||
var maxHeight;
|
||||
if ( options.fillSpace ) {
|
||||
maxHeight = this.element.parent().height();
|
||||
options.headers.each(function() {
|
||||
maxHeight -= $(this).outerHeight();
|
||||
});
|
||||
var maxPadding = 0;
|
||||
options.headers.next().each(function() {
|
||||
maxPadding = Math.max(maxPadding, $(this).innerHeight() - $(this).height());
|
||||
}).height(maxHeight - maxPadding);
|
||||
} else if ( options.autoHeight ) {
|
||||
maxHeight = 0;
|
||||
options.headers.next().each(function() {
|
||||
maxHeight = Math.max(maxHeight, $(this).outerHeight());
|
||||
}).height(maxHeight);
|
||||
}
|
||||
|
||||
options.headers
|
||||
.not(options.active || "")
|
||||
.next()
|
||||
.hide();
|
||||
options.active.parent().andSelf().addClass(options.selectedClass);
|
||||
|
||||
if (options.event) {
|
||||
this.element.bind((options.event) + ".accordion", clickHandler);
|
||||
}
|
||||
},
|
||||
activate: function(index) {
|
||||
// call clickHandler with custom event
|
||||
clickHandler.call(this.element[0], {
|
||||
target: findActive( this.options.headers, index )[0]
|
||||
});
|
||||
},
|
||||
destroy: function() {
|
||||
this.options.headers.next().css("display", "");
|
||||
if ( this.options.fillSpace || this.options.autoHeight ) {
|
||||
this.options.headers.next().css("height", "");
|
||||
}
|
||||
$.removeData(this.element[0], "accordion");
|
||||
this.element.removeClass("ui-accordion").unbind(".accordion");
|
||||
}
|
||||
});
|
||||
|
||||
function scopeCallback(callback, scope) {
|
||||
return function() {
|
||||
return callback.apply(scope, arguments);
|
||||
};
|
||||
};
|
||||
|
||||
function completed(cancel) {
|
||||
// if removed while animated data can be empty
|
||||
if (!$.data(this, "accordion")) {
|
||||
return;
|
||||
}
|
||||
|
||||
var instance = $.data(this, "accordion");
|
||||
var options = instance.options;
|
||||
options.running = cancel ? 0 : --options.running;
|
||||
if ( options.running ) {
|
||||
return;
|
||||
}
|
||||
if ( options.clearStyle ) {
|
||||
options.toShow.add(options.toHide).css({
|
||||
height: "",
|
||||
overflow: ""
|
||||
});
|
||||
}
|
||||
$(this).triggerHandler("accordionchange", [options.data], options.change);
|
||||
}
|
||||
|
||||
function toggle(toShow, toHide, data, clickedActive, down) {
|
||||
var options = $.data(this, "accordion").options;
|
||||
options.toShow = toShow;
|
||||
options.toHide = toHide;
|
||||
options.data = data;
|
||||
var complete = scopeCallback(completed, this);
|
||||
|
||||
// count elements to animate
|
||||
options.running = toHide.size() === 0 ? toShow.size() : toHide.size();
|
||||
|
||||
if ( options.animated ) {
|
||||
if ( !options.alwaysOpen && clickedActive ) {
|
||||
$.ui.accordion.animations[options.animated]({
|
||||
toShow: jQuery([]),
|
||||
toHide: toHide,
|
||||
complete: complete,
|
||||
down: down,
|
||||
autoHeight: options.autoHeight
|
||||
});
|
||||
} else {
|
||||
$.ui.accordion.animations[options.animated]({
|
||||
toShow: toShow,
|
||||
toHide: toHide,
|
||||
complete: complete,
|
||||
down: down,
|
||||
autoHeight: options.autoHeight
|
||||
});
|
||||
}
|
||||
} else {
|
||||
if ( !options.alwaysOpen && clickedActive ) {
|
||||
toShow.toggle();
|
||||
} else {
|
||||
toHide.hide();
|
||||
toShow.show();
|
||||
}
|
||||
complete(true);
|
||||
}
|
||||
}
|
||||
|
||||
function clickHandler(event) {
|
||||
var options = $.data(this, "accordion").options;
|
||||
if (options.disabled) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// called only when using activate(false) to close all parts programmatically
|
||||
if ( !event.target && !options.alwaysOpen ) {
|
||||
options.active.parent().andSelf().toggleClass(options.selectedClass);
|
||||
var toHide = options.active.next(),
|
||||
data = {
|
||||
instance: this,
|
||||
options: options,
|
||||
newHeader: jQuery([]),
|
||||
oldHeader: options.active,
|
||||
newContent: jQuery([]),
|
||||
oldContent: toHide
|
||||
},
|
||||
toShow = (options.active = $([]));
|
||||
toggle.call(this, toShow, toHide, data );
|
||||
return false;
|
||||
}
|
||||
// get the click target
|
||||
var clicked = $(event.target);
|
||||
|
||||
// due to the event delegation model, we have to check if one
|
||||
// of the parent elements is our actual header, and find that
|
||||
if ( clicked.parents(options.header).length ) {
|
||||
while ( !clicked.is(options.header) ) {
|
||||
clicked = clicked.parent();
|
||||
}
|
||||
}
|
||||
|
||||
var clickedActive = clicked[0] == options.active[0];
|
||||
|
||||
// if animations are still active, or the active header is the target, ignore click
|
||||
if (options.running || (options.alwaysOpen && clickedActive)) {
|
||||
return false;
|
||||
}
|
||||
if (!clicked.is(options.header)) {
|
||||
return;
|
||||
}
|
||||
|
||||
// switch classes
|
||||
options.active.parent().andSelf().toggleClass(options.selectedClass);
|
||||
if ( !clickedActive ) {
|
||||
clicked.parent().andSelf().addClass(options.selectedClass);
|
||||
}
|
||||
|
||||
// find elements to show and hide
|
||||
var toShow = clicked.next(),
|
||||
toHide = options.active.next(),
|
||||
//data = [clicked, options.active, toShow, toHide],
|
||||
data = {
|
||||
instance: this,
|
||||
options: options,
|
||||
newHeader: clicked,
|
||||
oldHeader: options.active,
|
||||
newContent: toShow,
|
||||
oldContent: toHide
|
||||
},
|
||||
down = options.headers.index( options.active[0] ) > options.headers.index( clicked[0] );
|
||||
|
||||
options.active = clickedActive ? $([]) : clicked;
|
||||
toggle.call(this, toShow, toHide, data, clickedActive, down );
|
||||
|
||||
return false;
|
||||
};
|
||||
|
||||
function findActive(headers, selector) {
|
||||
return selector != undefined
|
||||
? typeof selector == "number"
|
||||
? headers.filter(":eq(" + selector + ")")
|
||||
: headers.not(headers.not(selector))
|
||||
: selector === false
|
||||
? $([])
|
||||
: headers.filter(":eq(0)");
|
||||
}
|
||||
|
||||
$.extend($.ui.accordion, {
|
||||
defaults: {
|
||||
selectedClass: "selected",
|
||||
alwaysOpen: true,
|
||||
animated: 'slide',
|
||||
event: "click",
|
||||
header: "a",
|
||||
autoHeight: true,
|
||||
running: 0,
|
||||
navigationFilter: function() {
|
||||
return this.href.toLowerCase() == location.href.toLowerCase();
|
||||
}
|
||||
},
|
||||
animations: {
|
||||
slide: function(options, additions) {
|
||||
options = $.extend({
|
||||
easing: "swing",
|
||||
duration: 300
|
||||
}, options, additions);
|
||||
if ( !options.toHide.size() ) {
|
||||
options.toShow.animate({height: "show"}, options);
|
||||
return;
|
||||
}
|
||||
var hideHeight = options.toHide.height(),
|
||||
showHeight = options.toShow.height(),
|
||||
difference = showHeight / hideHeight;
|
||||
options.toShow.css({ height: 0, overflow: 'hidden' }).show();
|
||||
options.toHide.filter(":hidden").each(options.complete).end().filter(":visible").animate({height:"hide"},{
|
||||
step: function(now) {
|
||||
var current = (hideHeight - now) * difference;
|
||||
if ($.browser.msie || $.browser.opera) {
|
||||
current = Math.ceil(current);
|
||||
}
|
||||
options.toShow.height( current );
|
||||
},
|
||||
duration: options.duration,
|
||||
easing: options.easing,
|
||||
complete: function() {
|
||||
if ( !options.autoHeight ) {
|
||||
options.toShow.css("height", "auto");
|
||||
}
|
||||
options.complete();
|
||||
}
|
||||
});
|
||||
},
|
||||
bounceslide: function(options) {
|
||||
this.slide(options, {
|
||||
easing: options.down ? "bounceout" : "swing",
|
||||
duration: options.down ? 1000 : 200
|
||||
});
|
||||
},
|
||||
easeslide: function(options) {
|
||||
this.slide(options, {
|
||||
easing: "easeinout",
|
||||
duration: 700
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// deprecated, use accordion("activate", index) instead
|
||||
$.fn.activate = function(index) {
|
||||
return this.accordion("activate", index);
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
|
||||
@@ -1,277 +1,277 @@
|
||||
/*
|
||||
* jQuery UI @VERSION
|
||||
*
|
||||
* Copyright (c) 2008 Paul Bakaus (ui.jquery.com)
|
||||
* Dual licensed under the MIT (MIT-LICENSE.txt)
|
||||
* and GPL (GPL-LICENSE.txt) licenses.
|
||||
*
|
||||
* http://docs.jquery.com/UI
|
||||
*
|
||||
* $Id: ui.core.js 5587 2008-05-13 19:56:42Z scott.gonzalez $
|
||||
*/
|
||||
;(function($) {
|
||||
|
||||
$.ui = {
|
||||
plugin: {
|
||||
add: function(module, option, set) {
|
||||
var proto = $.ui[module].prototype;
|
||||
for(var i in set) {
|
||||
proto.plugins[i] = proto.plugins[i] || [];
|
||||
proto.plugins[i].push([option, set[i]]);
|
||||
}
|
||||
},
|
||||
call: function(instance, name, args) {
|
||||
var set = instance.plugins[name];
|
||||
if(!set) { return; }
|
||||
|
||||
for (var i = 0; i < set.length; i++) {
|
||||
if (instance.options[set[i][0]]) {
|
||||
set[i][1].apply(instance.element, args);
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
cssCache: {},
|
||||
css: function(name) {
|
||||
if ($.ui.cssCache[name]) { return $.ui.cssCache[name]; }
|
||||
var tmp = $('<div class="ui-resizable-gen">').addClass(name).css({position:'absolute', top:'-5000px', left:'-5000px', display:'block'}).appendTo('body');
|
||||
|
||||
//if (!$.browser.safari)
|
||||
//tmp.appendTo('body');
|
||||
|
||||
//Opera and Safari set width and height to 0px instead of auto
|
||||
//Safari returns rgba(0,0,0,0) when bgcolor is not set
|
||||
$.ui.cssCache[name] = !!(
|
||||
(!(/auto|default/).test(tmp.css('cursor')) || (/^[1-9]/).test(tmp.css('height')) || (/^[1-9]/).test(tmp.css('width')) ||
|
||||
!(/none/).test(tmp.css('backgroundImage')) || !(/transparent|rgba\(0, 0, 0, 0\)/).test(tmp.css('backgroundColor')))
|
||||
);
|
||||
try { $('body').get(0).removeChild(tmp.get(0)); } catch(e){}
|
||||
return $.ui.cssCache[name];
|
||||
},
|
||||
disableSelection: function(e) {
|
||||
e.unselectable = "on";
|
||||
e.onselectstart = function() { return false; };
|
||||
if (e.style) { e.style.MozUserSelect = "none"; }
|
||||
},
|
||||
enableSelection: function(e) {
|
||||
e.unselectable = "off";
|
||||
e.onselectstart = function() { return true; };
|
||||
if (e.style) { e.style.MozUserSelect = ""; }
|
||||
},
|
||||
hasScroll: function(e, a) {
|
||||
var scroll = /top/.test(a||"top") ? 'scrollTop' : 'scrollLeft', has = false;
|
||||
if (e[scroll] > 0) return true; e[scroll] = 1;
|
||||
has = e[scroll] > 0 ? true : false; e[scroll] = 0;
|
||||
return has;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
/** jQuery core modifications and additions **/
|
||||
|
||||
var _remove = $.fn.remove;
|
||||
$.fn.remove = function() {
|
||||
$("*", this).add(this).trigger("remove");
|
||||
return _remove.apply(this, arguments );
|
||||
};
|
||||
|
||||
// $.widget is a factory to create jQuery plugins
|
||||
// taking some boilerplate code out of the plugin code
|
||||
// created by Scott González and Jörn Zaefferer
|
||||
function getter(namespace, plugin, method) {
|
||||
var methods = $[namespace][plugin].getter || [];
|
||||
methods = (typeof methods == "string" ? methods.split(/,?\s+/) : methods);
|
||||
return ($.inArray(method, methods) != -1);
|
||||
}
|
||||
|
||||
var widgetPrototype = {
|
||||
init: function() {},
|
||||
destroy: function() {
|
||||
this.element.removeData(this.widgetName);
|
||||
},
|
||||
|
||||
getData: function(key) {
|
||||
return this.options[key];
|
||||
},
|
||||
setData: function(key, value) {
|
||||
this.options[key] = value;
|
||||
},
|
||||
|
||||
enable: function() {
|
||||
this.setData('disabled', false);
|
||||
},
|
||||
disable: function() {
|
||||
this.setData('disabled', true);
|
||||
}
|
||||
};
|
||||
|
||||
$.widget = function(name, prototype) {
|
||||
var namespace = name.split(".")[0];
|
||||
name = name.split(".")[1];
|
||||
// create plugin method
|
||||
$.fn[name] = function(options) {
|
||||
var isMethodCall = (typeof options == 'string'),
|
||||
args = Array.prototype.slice.call(arguments, 1);
|
||||
|
||||
if (isMethodCall && getter(namespace, name, options)) {
|
||||
var instance = $.data(this[0], name);
|
||||
return (instance ? instance[options].apply(instance, args)
|
||||
: undefined);
|
||||
}
|
||||
|
||||
return this.each(function() {
|
||||
var instance = $.data(this, name);
|
||||
if (!instance) {
|
||||
$.data(this, name, new $[namespace][name](this, options));
|
||||
} else if (isMethodCall) {
|
||||
instance[options].apply(instance, args);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
// create widget constructor
|
||||
$[namespace][name] = function(element, options) {
|
||||
var self = this;
|
||||
|
||||
this.widgetName = name;
|
||||
|
||||
this.options = $.extend({}, $[namespace][name].defaults, options);
|
||||
this.element = $(element)
|
||||
.bind('setData.' + name, function(e, key, value) {
|
||||
return self.setData(key, value);
|
||||
})
|
||||
.bind('getData.' + name, function(e, key) {
|
||||
return self.getData(key);
|
||||
})
|
||||
.bind('remove', function() {
|
||||
return self.destroy();
|
||||
});
|
||||
this.init();
|
||||
};
|
||||
|
||||
// add widget prototype
|
||||
$[namespace][name].prototype = $.extend({}, widgetPrototype, prototype);
|
||||
};
|
||||
|
||||
|
||||
/** Mouse Interaction Plugin **/
|
||||
|
||||
$.ui.mouse = {
|
||||
mouseInit: function() {
|
||||
var self = this;
|
||||
|
||||
this.element.bind('mousedown.'+this.widgetName, function(e) {
|
||||
return self.mouseDown(e);
|
||||
});
|
||||
|
||||
// Prevent text selection in IE
|
||||
if ($.browser.msie) {
|
||||
this._mouseUnselectable = this.element.attr('unselectable');
|
||||
this.element.attr('unselectable', 'on');
|
||||
}
|
||||
|
||||
this.started = false;
|
||||
},
|
||||
|
||||
// TODO: make sure destroying one instance of mouse doesn't mess with
|
||||
// other instances of mouse
|
||||
mouseDestroy: function() {
|
||||
this.element.unbind('.'+this.widgetName);
|
||||
|
||||
// Restore text selection in IE
|
||||
($.browser.msie
|
||||
&& this.element.attr('unselectable', this._mouseUnselectable));
|
||||
},
|
||||
|
||||
mouseDown: function(e) {
|
||||
// we may have missed mouseup (out of window)
|
||||
(this._mouseStarted && this.mouseUp(e));
|
||||
|
||||
this._mouseDownEvent = e;
|
||||
|
||||
var self = this,
|
||||
btnIsLeft = (e.which == 1),
|
||||
elIsCancel = ($(e.target).is(this.options.cancel));
|
||||
if (!btnIsLeft || elIsCancel) {
|
||||
return true;
|
||||
}
|
||||
|
||||
this._mouseDelayMet = !this.options.delay;
|
||||
if (!this._mouseDelayMet) {
|
||||
this._mouseDelayTimer = setTimeout(function() {
|
||||
self._mouseDelayMet = true;
|
||||
}, this.options.delay);
|
||||
}
|
||||
|
||||
// these delegates are required to keep context
|
||||
this._mouseMoveDelegate = function(e) {
|
||||
return self.mouseMove(e);
|
||||
};
|
||||
this._mouseUpDelegate = function(e) {
|
||||
return self.mouseUp(e);
|
||||
};
|
||||
$(document)
|
||||
.bind('mousemove.'+this.widgetName, this._mouseMoveDelegate)
|
||||
.bind('mouseup.'+this.widgetName, this._mouseUpDelegate);
|
||||
|
||||
return false;
|
||||
},
|
||||
|
||||
mouseMove: function(e) {
|
||||
// IE mouseup check - mouseup happened when mouse was out of window
|
||||
if ($.browser.msie && !e.button) {
|
||||
return this.mouseUp(e);
|
||||
}
|
||||
|
||||
if (this._mouseStarted) {
|
||||
this.mouseDrag(e);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (this.mouseDistanceMet(e) && this.mouseDelayMet(e)) {
|
||||
this._mouseStarted =
|
||||
(this.mouseStart(this._mouseDownEvent, e) !== false);
|
||||
(this._mouseStarted || this.mouseUp(e));
|
||||
}
|
||||
|
||||
return !this._mouseStarted;
|
||||
},
|
||||
|
||||
mouseUp: function(e) {
|
||||
$(document)
|
||||
.unbind('mousemove.'+this.widgetName, this._mouseMoveDelegate)
|
||||
.unbind('mouseup.'+this.widgetName, this._mouseUpDelegate);
|
||||
|
||||
if (this._mouseStarted) {
|
||||
this._mouseStarted = false;
|
||||
this.mouseStop(e);
|
||||
}
|
||||
|
||||
return false;
|
||||
},
|
||||
|
||||
mouseDistanceMet: function(e) {
|
||||
return (Math.max(
|
||||
Math.abs(this._mouseDownEvent.pageX - e.pageX),
|
||||
Math.abs(this._mouseDownEvent.pageY - e.pageY)
|
||||
) >= this.options.distance
|
||||
);
|
||||
},
|
||||
|
||||
mouseDelayMet: function(e) {
|
||||
return this._mouseDelayMet;
|
||||
},
|
||||
|
||||
// These are placeholder methods, to be overriden by extending plugin
|
||||
mouseStart: function(e) {},
|
||||
mouseDrag: function(e) {},
|
||||
mouseStop: function(e) {}
|
||||
};
|
||||
|
||||
$.ui.mouse.defaults = {
|
||||
cancel: null,
|
||||
distance: 0,
|
||||
delay: 0
|
||||
};
|
||||
|
||||
/*
|
||||
* jQuery UI @VERSION
|
||||
*
|
||||
* Copyright (c) 2008 Paul Bakaus (ui.jquery.com)
|
||||
* Dual licensed under the MIT (MIT-LICENSE.txt)
|
||||
* and GPL (GPL-LICENSE.txt) licenses.
|
||||
*
|
||||
* http://docs.jquery.com/UI
|
||||
*
|
||||
* $Id: ui.core.js 5587 2008-05-13 19:56:42Z scott.gonzalez $
|
||||
*/
|
||||
;(function($) {
|
||||
|
||||
$.ui = {
|
||||
plugin: {
|
||||
add: function(module, option, set) {
|
||||
var proto = $.ui[module].prototype;
|
||||
for(var i in set) {
|
||||
proto.plugins[i] = proto.plugins[i] || [];
|
||||
proto.plugins[i].push([option, set[i]]);
|
||||
}
|
||||
},
|
||||
call: function(instance, name, args) {
|
||||
var set = instance.plugins[name];
|
||||
if(!set) { return; }
|
||||
|
||||
for (var i = 0; i < set.length; i++) {
|
||||
if (instance.options[set[i][0]]) {
|
||||
set[i][1].apply(instance.element, args);
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
cssCache: {},
|
||||
css: function(name) {
|
||||
if ($.ui.cssCache[name]) { return $.ui.cssCache[name]; }
|
||||
var tmp = $('<div class="ui-resizable-gen">').addClass(name).css({position:'absolute', top:'-5000px', left:'-5000px', display:'block'}).appendTo('body');
|
||||
|
||||
//if (!$.browser.safari)
|
||||
//tmp.appendTo('body');
|
||||
|
||||
//Opera and Safari set width and height to 0px instead of auto
|
||||
//Safari returns rgba(0,0,0,0) when bgcolor is not set
|
||||
$.ui.cssCache[name] = !!(
|
||||
(!(/auto|default/).test(tmp.css('cursor')) || (/^[1-9]/).test(tmp.css('height')) || (/^[1-9]/).test(tmp.css('width')) ||
|
||||
!(/none/).test(tmp.css('backgroundImage')) || !(/transparent|rgba\(0, 0, 0, 0\)/).test(tmp.css('backgroundColor')))
|
||||
);
|
||||
try { $('body').get(0).removeChild(tmp.get(0)); } catch(e){}
|
||||
return $.ui.cssCache[name];
|
||||
},
|
||||
disableSelection: function(e) {
|
||||
e.unselectable = "on";
|
||||
e.onselectstart = function() { return false; };
|
||||
if (e.style) { e.style.MozUserSelect = "none"; }
|
||||
},
|
||||
enableSelection: function(e) {
|
||||
e.unselectable = "off";
|
||||
e.onselectstart = function() { return true; };
|
||||
if (e.style) { e.style.MozUserSelect = ""; }
|
||||
},
|
||||
hasScroll: function(e, a) {
|
||||
var scroll = /top/.test(a||"top") ? 'scrollTop' : 'scrollLeft', has = false;
|
||||
if (e[scroll] > 0) return true; e[scroll] = 1;
|
||||
has = e[scroll] > 0 ? true : false; e[scroll] = 0;
|
||||
return has;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
/** jQuery core modifications and additions **/
|
||||
|
||||
var _remove = $.fn.remove;
|
||||
$.fn.remove = function() {
|
||||
$("*", this).add(this).trigger("remove");
|
||||
return _remove.apply(this, arguments );
|
||||
};
|
||||
|
||||
// $.widget is a factory to create jQuery plugins
|
||||
// taking some boilerplate code out of the plugin code
|
||||
// created by Scott González and Jörn Zaefferer
|
||||
function getter(namespace, plugin, method) {
|
||||
var methods = $[namespace][plugin].getter || [];
|
||||
methods = (typeof methods == "string" ? methods.split(/,?\s+/) : methods);
|
||||
return ($.inArray(method, methods) != -1);
|
||||
}
|
||||
|
||||
var widgetPrototype = {
|
||||
init: function() {},
|
||||
destroy: function() {
|
||||
this.element.removeData(this.widgetName);
|
||||
},
|
||||
|
||||
getData: function(key) {
|
||||
return this.options[key];
|
||||
},
|
||||
setData: function(key, value) {
|
||||
this.options[key] = value;
|
||||
},
|
||||
|
||||
enable: function() {
|
||||
this.setData('disabled', false);
|
||||
},
|
||||
disable: function() {
|
||||
this.setData('disabled', true);
|
||||
}
|
||||
};
|
||||
|
||||
$.widget = function(name, prototype) {
|
||||
var namespace = name.split(".")[0];
|
||||
name = name.split(".")[1];
|
||||
// create plugin method
|
||||
$.fn[name] = function(options) {
|
||||
var isMethodCall = (typeof options == 'string'),
|
||||
args = Array.prototype.slice.call(arguments, 1);
|
||||
|
||||
if (isMethodCall && getter(namespace, name, options)) {
|
||||
var instance = $.data(this[0], name);
|
||||
return (instance ? instance[options].apply(instance, args)
|
||||
: undefined);
|
||||
}
|
||||
|
||||
return this.each(function() {
|
||||
var instance = $.data(this, name);
|
||||
if (!instance) {
|
||||
$.data(this, name, new $[namespace][name](this, options));
|
||||
} else if (isMethodCall) {
|
||||
instance[options].apply(instance, args);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
// create widget constructor
|
||||
$[namespace][name] = function(element, options) {
|
||||
var self = this;
|
||||
|
||||
this.widgetName = name;
|
||||
|
||||
this.options = $.extend({}, $[namespace][name].defaults, options);
|
||||
this.element = $(element)
|
||||
.bind('setData.' + name, function(e, key, value) {
|
||||
return self.setData(key, value);
|
||||
})
|
||||
.bind('getData.' + name, function(e, key) {
|
||||
return self.getData(key);
|
||||
})
|
||||
.bind('remove', function() {
|
||||
return self.destroy();
|
||||
});
|
||||
this.init();
|
||||
};
|
||||
|
||||
// add widget prototype
|
||||
$[namespace][name].prototype = $.extend({}, widgetPrototype, prototype);
|
||||
};
|
||||
|
||||
|
||||
/** Mouse Interaction Plugin **/
|
||||
|
||||
$.ui.mouse = {
|
||||
mouseInit: function() {
|
||||
var self = this;
|
||||
|
||||
this.element.bind('mousedown.'+this.widgetName, function(e) {
|
||||
return self.mouseDown(e);
|
||||
});
|
||||
|
||||
// Prevent text selection in IE
|
||||
if ($.browser.msie) {
|
||||
this._mouseUnselectable = this.element.attr('unselectable');
|
||||
this.element.attr('unselectable', 'on');
|
||||
}
|
||||
|
||||
this.started = false;
|
||||
},
|
||||
|
||||
// TODO: make sure destroying one instance of mouse doesn't mess with
|
||||
// other instances of mouse
|
||||
mouseDestroy: function() {
|
||||
this.element.unbind('.'+this.widgetName);
|
||||
|
||||
// Restore text selection in IE
|
||||
($.browser.msie
|
||||
&& this.element.attr('unselectable', this._mouseUnselectable));
|
||||
},
|
||||
|
||||
mouseDown: function(e) {
|
||||
// we may have missed mouseup (out of window)
|
||||
(this._mouseStarted && this.mouseUp(e));
|
||||
|
||||
this._mouseDownEvent = e;
|
||||
|
||||
var self = this,
|
||||
btnIsLeft = (e.which == 1),
|
||||
elIsCancel = ($(e.target).is(this.options.cancel));
|
||||
if (!btnIsLeft || elIsCancel) {
|
||||
return true;
|
||||
}
|
||||
|
||||
this._mouseDelayMet = !this.options.delay;
|
||||
if (!this._mouseDelayMet) {
|
||||
this._mouseDelayTimer = setTimeout(function() {
|
||||
self._mouseDelayMet = true;
|
||||
}, this.options.delay);
|
||||
}
|
||||
|
||||
// these delegates are required to keep context
|
||||
this._mouseMoveDelegate = function(e) {
|
||||
return self.mouseMove(e);
|
||||
};
|
||||
this._mouseUpDelegate = function(e) {
|
||||
return self.mouseUp(e);
|
||||
};
|
||||
$(document)
|
||||
.bind('mousemove.'+this.widgetName, this._mouseMoveDelegate)
|
||||
.bind('mouseup.'+this.widgetName, this._mouseUpDelegate);
|
||||
|
||||
return false;
|
||||
},
|
||||
|
||||
mouseMove: function(e) {
|
||||
// IE mouseup check - mouseup happened when mouse was out of window
|
||||
if ($.browser.msie && !e.button) {
|
||||
return this.mouseUp(e);
|
||||
}
|
||||
|
||||
if (this._mouseStarted) {
|
||||
this.mouseDrag(e);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (this.mouseDistanceMet(e) && this.mouseDelayMet(e)) {
|
||||
this._mouseStarted =
|
||||
(this.mouseStart(this._mouseDownEvent, e) !== false);
|
||||
(this._mouseStarted || this.mouseUp(e));
|
||||
}
|
||||
|
||||
return !this._mouseStarted;
|
||||
},
|
||||
|
||||
mouseUp: function(e) {
|
||||
$(document)
|
||||
.unbind('mousemove.'+this.widgetName, this._mouseMoveDelegate)
|
||||
.unbind('mouseup.'+this.widgetName, this._mouseUpDelegate);
|
||||
|
||||
if (this._mouseStarted) {
|
||||
this._mouseStarted = false;
|
||||
this.mouseStop(e);
|
||||
}
|
||||
|
||||
return false;
|
||||
},
|
||||
|
||||
mouseDistanceMet: function(e) {
|
||||
return (Math.max(
|
||||
Math.abs(this._mouseDownEvent.pageX - e.pageX),
|
||||
Math.abs(this._mouseDownEvent.pageY - e.pageY)
|
||||
) >= this.options.distance
|
||||
);
|
||||
},
|
||||
|
||||
mouseDelayMet: function(e) {
|
||||
return this._mouseDelayMet;
|
||||
},
|
||||
|
||||
// These are placeholder methods, to be overriden by extending plugin
|
||||
mouseStart: function(e) {},
|
||||
mouseDrag: function(e) {},
|
||||
mouseStop: function(e) {}
|
||||
};
|
||||
|
||||
$.ui.mouse.defaults = {
|
||||
cancel: null,
|
||||
distance: 0,
|
||||
delay: 0
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,442 +1,442 @@
|
||||
/*
|
||||
* jQuery UI Dialog
|
||||
*
|
||||
* Copyright (c) 2008 Richard D. Worth (rdworth.org)
|
||||
* Dual licensed under the MIT (MIT-LICENSE.txt)
|
||||
* and GPL (GPL-LICENSE.txt) licenses.
|
||||
*
|
||||
* http://docs.jquery.com/UI/Dialog
|
||||
*
|
||||
* Depends:
|
||||
* ui.core.js
|
||||
* ui.draggable.js
|
||||
* ui.resizable.js
|
||||
*
|
||||
* Revision: $Id: ui.dialog.js 5608 2008-05-15 14:41:12Z scott.gonzalez $
|
||||
*/
|
||||
;(function($) {
|
||||
|
||||
var setDataSwitch = {
|
||||
dragStart: "start.draggable",
|
||||
drag: "drag.draggable",
|
||||
dragStop: "stop.draggable",
|
||||
maxHeight: "maxHeight.resizable",
|
||||
minHeight: "minHeight.resizable",
|
||||
maxWidth: "maxWidth.resizable",
|
||||
minWidth: "minWidth.resizable",
|
||||
resizeStart: "start.resizable",
|
||||
resize: "drag.resizable",
|
||||
resizeStop: "stop.resizable"
|
||||
};
|
||||
|
||||
$.widget("ui.dialog", {
|
||||
init: function() {
|
||||
var self = this,
|
||||
options = this.options,
|
||||
resizeHandles = typeof options.resizable == 'string'
|
||||
? options.resizable
|
||||
: 'n,e,s,w,se,sw,ne,nw',
|
||||
|
||||
uiDialogContent = this.element
|
||||
.addClass('ui-dialog-content')
|
||||
.wrap('<div/>')
|
||||
.wrap('<div/>'),
|
||||
|
||||
uiDialogContainer = uiDialogContent.parent()
|
||||
.addClass('ui-dialog-container')
|
||||
.css({position: 'relative'}),
|
||||
|
||||
title = options.title || uiDialogContent.attr('title') || '',
|
||||
uiDialogTitlebar = (this.uiDialogTitlebar =
|
||||
$('<div class="ui-dialog-titlebar"/>'))
|
||||
.append('<span class="ui-dialog-title">' + title + '</span>')
|
||||
.append('<a href="#" class="ui-dialog-titlebar-close"><span>X</span></a>')
|
||||
.prependTo(uiDialogContainer),
|
||||
|
||||
uiDialog = (this.uiDialog = uiDialogContainer.parent())
|
||||
.hide()
|
||||
.appendTo(document.body)
|
||||
.addClass('ui-dialog')
|
||||
.addClass(options.dialogClass)
|
||||
// add content classes to dialog
|
||||
// to inherit theme at top level of element
|
||||
.addClass(uiDialogContent.attr('className'))
|
||||
.removeClass('ui-dialog-content')
|
||||
.css({
|
||||
position: 'absolute',
|
||||
width: options.width,
|
||||
height: options.height,
|
||||
overflow: 'hidden',
|
||||
zIndex: options.zIndex
|
||||
})
|
||||
// setting tabIndex makes the div focusable
|
||||
// setting outline to 0 prevents a border on focus in Mozilla
|
||||
.attr('tabIndex', -1).css('outline', 0).keydown(function(ev) {
|
||||
if (options.closeOnEscape) {
|
||||
var ESC = 27;
|
||||
(ev.keyCode && ev.keyCode == ESC && self.close());
|
||||
}
|
||||
})
|
||||
.mousedown(function() {
|
||||
self.moveToTop();
|
||||
});
|
||||
|
||||
this.uiDialogTitlebarClose = $('.ui-dialog-titlebar-close', uiDialogTitlebar)
|
||||
.hover(
|
||||
function() {
|
||||
$(this).addClass('ui-dialog-titlebar-close-hover');
|
||||
},
|
||||
function() {
|
||||
$(this).removeClass('ui-dialog-titlebar-close-hover');
|
||||
}
|
||||
)
|
||||
.mousedown(function(ev) {
|
||||
ev.stopPropagation();
|
||||
})
|
||||
.click(function() {
|
||||
self.close();
|
||||
return false;
|
||||
});
|
||||
|
||||
var hasButtons = false;
|
||||
$.each(options.buttons, function() { return !(hasButtons = true); });
|
||||
if (hasButtons) {
|
||||
var uiDialogButtonPane = $('<div class="ui-dialog-buttonpane"/>')
|
||||
.appendTo(uiDialog);
|
||||
$.each(options.buttons, function(name, fn) {
|
||||
$('<button/>')
|
||||
.text(name)
|
||||
.click(function() { fn.apply(self.element, arguments); })
|
||||
.appendTo(uiDialogButtonPane);
|
||||
});
|
||||
}
|
||||
|
||||
if ($.fn.draggable) {
|
||||
uiDialog.draggable({
|
||||
handle: '.ui-dialog-titlebar',
|
||||
start: function(e, ui) {
|
||||
self.moveToTop();
|
||||
(options.dragStart && options.dragStart.apply(this, arguments));
|
||||
},
|
||||
drag: options.drag,
|
||||
stop: function(e, ui) {
|
||||
(options.dragStop && options.dragStop.apply(this, arguments));
|
||||
$.ui.dialog.overlay.resize();
|
||||
}
|
||||
});
|
||||
(options.draggable || uiDialog.draggable('disable'));
|
||||
}
|
||||
|
||||
if ($.fn.resizable) {
|
||||
uiDialog.resizable({
|
||||
maxWidth: options.maxWidth,
|
||||
maxHeight: options.maxHeight,
|
||||
minWidth: options.minWidth,
|
||||
minHeight: options.minHeight,
|
||||
start: options.resizeStart,
|
||||
resize: options.resize,
|
||||
handles: resizeHandles,
|
||||
stop: function(e, ui) {
|
||||
(options.resizeStop && options.resizeStop.apply(this, arguments));
|
||||
$.ui.dialog.overlay.resize();
|
||||
}
|
||||
});
|
||||
(options.resizable || uiDialog.resizable('disable'));
|
||||
}
|
||||
|
||||
(options.bgiframe && $.fn.bgiframe && uiDialog.bgiframe());
|
||||
(options.autoOpen && this.open());
|
||||
},
|
||||
|
||||
setData: function(key, value){
|
||||
(setDataSwitch[key] && this.uiDialog.data(setDataSwitch[key], value));
|
||||
switch (key) {
|
||||
case "draggable":
|
||||
this.uiDialog.draggable(value ? 'enable' : 'disable');
|
||||
break;
|
||||
case "height":
|
||||
this.uiDialog.height(value);
|
||||
break;
|
||||
case "position":
|
||||
this.position(value);
|
||||
break;
|
||||
case "resizable":
|
||||
(typeof value == 'string' && this.uiDialog.data('handles.resizable', value));
|
||||
this.uiDialog.resizable(value ? 'enable' : 'disable');
|
||||
break;
|
||||
case "title":
|
||||
$(".ui-dialog-title", this.uiDialogTitlebar).text(value);
|
||||
break;
|
||||
case "width":
|
||||
this.uiDialog.width(value);
|
||||
break;
|
||||
}
|
||||
this.options[key] = value;
|
||||
},
|
||||
|
||||
position: function(pos) {
|
||||
var wnd = $(window), doc = $(document),
|
||||
pTop = doc.scrollTop(), pLeft = doc.scrollLeft(),
|
||||
minTop = pTop;
|
||||
|
||||
if ($.inArray(pos, ['center','top','right','bottom','left']) >= 0) {
|
||||
pos = [
|
||||
pos == 'right' || pos == 'left' ? pos : 'center',
|
||||
pos == 'top' || pos == 'bottom' ? pos : 'middle'
|
||||
];
|
||||
}
|
||||
if (pos.constructor != Array) {
|
||||
pos = ['center', 'middle'];
|
||||
}
|
||||
if (pos[0].constructor == Number) {
|
||||
pLeft += pos[0];
|
||||
} else {
|
||||
switch (pos[0]) {
|
||||
case 'left':
|
||||
pLeft += 0;
|
||||
break;
|
||||
case 'right':
|
||||
pLeft += (wnd.width()) - (this.uiDialog.width());
|
||||
break;
|
||||
default:
|
||||
case 'center':
|
||||
pLeft += (wnd.width() / 2) - (this.uiDialog.width() / 2);
|
||||
}
|
||||
}
|
||||
if (pos[1].constructor == Number) {
|
||||
pTop += pos[1];
|
||||
} else {
|
||||
switch (pos[1]) {
|
||||
case 'top':
|
||||
pTop += 0;
|
||||
break;
|
||||
case 'bottom':
|
||||
pTop += (wnd.height()) - (this.uiDialog.height());
|
||||
break;
|
||||
default:
|
||||
case 'middle':
|
||||
pTop += (wnd.height() / 2) - (this.uiDialog.height() / 2);
|
||||
}
|
||||
}
|
||||
|
||||
// prevent the dialog from being too high (make sure the titlebar
|
||||
// is accessible)
|
||||
pTop = Math.max(pTop, minTop);
|
||||
this.uiDialog.css({top: pTop, left: pLeft});
|
||||
},
|
||||
|
||||
open: function() {
|
||||
this.overlay = this.options.modal ? new $.ui.dialog.overlay(this) : null;
|
||||
this.uiDialog.appendTo('body');
|
||||
this.position(this.options.position);
|
||||
this.uiDialog.show();
|
||||
this.moveToTop();
|
||||
|
||||
// CALLBACK: open
|
||||
var openEV = null;
|
||||
var openUI = {
|
||||
options: this.options
|
||||
};
|
||||
this.uiDialogTitlebarClose.focus();
|
||||
this.element.triggerHandler("dialogopen", [openEV, openUI], this.options.open);
|
||||
},
|
||||
|
||||
moveToTop: function() {
|
||||
if (this.options.modal || !this.options.stack) { return; }
|
||||
|
||||
var maxZ = this.options.zIndex, options = this.options;
|
||||
$('.ui-dialog:visible').each(function() {
|
||||
maxZ = Math.max(maxZ, parseInt($(this).css('z-index'), 10) || options.zIndex);
|
||||
});
|
||||
(this.overlay && this.overlay.$el.css('z-index', ++maxZ));
|
||||
this.uiDialog.css('z-index', ++maxZ);
|
||||
},
|
||||
|
||||
close: function() {
|
||||
(this.overlay && this.overlay.destroy());
|
||||
this.uiDialog.hide();
|
||||
|
||||
// CALLBACK: close
|
||||
var closeEV = null;
|
||||
var closeUI = {
|
||||
options: this.options
|
||||
};
|
||||
this.element.triggerHandler("dialogclose", [closeEV, closeUI], this.options.close);
|
||||
$.ui.dialog.overlay.resize();
|
||||
},
|
||||
|
||||
destroy: function() {
|
||||
(this.overlay && this.overlay.destroy());
|
||||
this.uiDialog.hide();
|
||||
this.element
|
||||
.unbind('.dialog')
|
||||
.removeData('dialog')
|
||||
.removeClass('ui-dialog-content')
|
||||
.hide().appendTo('body');
|
||||
this.uiDialog.remove();
|
||||
}
|
||||
});
|
||||
|
||||
$.extend($.ui.dialog, {
|
||||
defaults: {
|
||||
autoOpen: true,
|
||||
bgiframe: false,
|
||||
buttons: {},
|
||||
closeOnEscape: true,
|
||||
draggable: true,
|
||||
height: 200,
|
||||
minHeight: 100,
|
||||
minWidth: 150,
|
||||
modal: false,
|
||||
overlay: {},
|
||||
position: 'center',
|
||||
resizable: true,
|
||||
stack: true,
|
||||
width: 300,
|
||||
zIndex: 1000
|
||||
},
|
||||
|
||||
overlay: function(dialog) {
|
||||
this.$el = $.ui.dialog.overlay.create(dialog);
|
||||
}
|
||||
});
|
||||
|
||||
$.extend($.ui.dialog.overlay, {
|
||||
instances: [],
|
||||
events: $.map('focus,mousedown,mouseup,keydown,keypress,click'.split(','),
|
||||
function(e) { return e + '.dialog-overlay'; }).join(' '),
|
||||
create: function(dialog) {
|
||||
if (this.instances.length === 0) {
|
||||
// prevent use of anchors and inputs
|
||||
// we use a setTimeout in case the overlay is created from an
|
||||
// event that we're going to be cancelling (see #2804)
|
||||
setTimeout(function() {
|
||||
$('a, :input').bind($.ui.dialog.overlay.events, function() {
|
||||
// allow use of the element if inside a dialog and
|
||||
// - there are no modal dialogs
|
||||
// - there are modal dialogs, but we are in front of the topmost modal
|
||||
var allow = false;
|
||||
var $dialog = $(this).parents('.ui-dialog');
|
||||
if ($dialog.length) {
|
||||
var $overlays = $('.ui-dialog-overlay');
|
||||
if ($overlays.length) {
|
||||
var maxZ = parseInt($overlays.css('z-index'), 10);
|
||||
$overlays.each(function() {
|
||||
maxZ = Math.max(maxZ, parseInt($(this).css('z-index'), 10));
|
||||
});
|
||||
allow = parseInt($dialog.css('z-index'), 10) > maxZ;
|
||||
} else {
|
||||
allow = true;
|
||||
}
|
||||
}
|
||||
return allow;
|
||||
});
|
||||
}, 1);
|
||||
|
||||
// allow closing by pressing the escape key
|
||||
$(document).bind('keydown.dialog-overlay', function(e) {
|
||||
var ESC = 27;
|
||||
(e.keyCode && e.keyCode == ESC && dialog.close());
|
||||
});
|
||||
|
||||
// handle window resize
|
||||
$(window).bind('resize.dialog-overlay', $.ui.dialog.overlay.resize);
|
||||
}
|
||||
|
||||
var $el = $('<div/>').appendTo(document.body)
|
||||
.addClass('ui-dialog-overlay').css($.extend({
|
||||
borderWidth: 0, margin: 0, padding: 0,
|
||||
position: 'absolute', top: 0, left: 0,
|
||||
width: this.width(),
|
||||
height: this.height()
|
||||
}, dialog.options.overlay));
|
||||
|
||||
(dialog.options.bgiframe && $.fn.bgiframe && $el.bgiframe());
|
||||
|
||||
this.instances.push($el);
|
||||
return $el;
|
||||
},
|
||||
|
||||
destroy: function($el) {
|
||||
this.instances.splice($.inArray(this.instances, $el), 1);
|
||||
|
||||
if (this.instances.length === 0) {
|
||||
$('a, :input').add([document, window]).unbind('.dialog-overlay');
|
||||
}
|
||||
|
||||
$el.remove();
|
||||
},
|
||||
|
||||
height: function() {
|
||||
if ($.browser.msie && $.browser.version < 7) {
|
||||
var scrollHeight = Math.max(
|
||||
document.documentElement.scrollHeight,
|
||||
document.body.scrollHeight
|
||||
);
|
||||
var offsetHeight = Math.max(
|
||||
document.documentElement.offsetHeight,
|
||||
document.body.offsetHeight
|
||||
);
|
||||
|
||||
if (scrollHeight < offsetHeight) {
|
||||
return $(window).height() + 'px';
|
||||
} else {
|
||||
return scrollHeight + 'px';
|
||||
}
|
||||
} else {
|
||||
return $(document).height() + 'px';
|
||||
}
|
||||
},
|
||||
|
||||
width: function() {
|
||||
if ($.browser.msie && $.browser.version < 7) {
|
||||
var scrollWidth = Math.max(
|
||||
document.documentElement.scrollWidth,
|
||||
document.body.scrollWidth
|
||||
);
|
||||
var offsetWidth = Math.max(
|
||||
document.documentElement.offsetWidth,
|
||||
document.body.offsetWidth
|
||||
);
|
||||
|
||||
if (scrollWidth < offsetWidth) {
|
||||
return $(window).width() + 'px';
|
||||
} else {
|
||||
return scrollWidth + 'px';
|
||||
}
|
||||
} else {
|
||||
return $(document).width() + 'px';
|
||||
}
|
||||
},
|
||||
|
||||
resize: function() {
|
||||
/* If the dialog is draggable and the user drags it past the
|
||||
* right edge of the window, the document becomes wider so we
|
||||
* need to stretch the overlay. If the user then drags the
|
||||
* dialog back to the left, the document will become narrower,
|
||||
* so we need to shrink the overlay to the appropriate size.
|
||||
* This is handled by shrinking the overlay before setting it
|
||||
* to the full document size.
|
||||
*/
|
||||
var $overlays = $([]);
|
||||
$.each($.ui.dialog.overlay.instances, function() {
|
||||
$overlays = $overlays.add(this);
|
||||
});
|
||||
|
||||
$overlays.css({
|
||||
width: 0,
|
||||
height: 0
|
||||
}).css({
|
||||
width: $.ui.dialog.overlay.width(),
|
||||
height: $.ui.dialog.overlay.height()
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
$.extend($.ui.dialog.overlay.prototype, {
|
||||
destroy: function() {
|
||||
$.ui.dialog.overlay.destroy(this.$el);
|
||||
}
|
||||
});
|
||||
|
||||
})(jQuery);
|
||||
/*
|
||||
* jQuery UI Dialog
|
||||
*
|
||||
* Copyright (c) 2008 Richard D. Worth (rdworth.org)
|
||||
* Dual licensed under the MIT (MIT-LICENSE.txt)
|
||||
* and GPL (GPL-LICENSE.txt) licenses.
|
||||
*
|
||||
* http://docs.jquery.com/UI/Dialog
|
||||
*
|
||||
* Depends:
|
||||
* ui.core.js
|
||||
* ui.draggable.js
|
||||
* ui.resizable.js
|
||||
*
|
||||
* Revision: $Id: ui.dialog.js 5608 2008-05-15 14:41:12Z scott.gonzalez $
|
||||
*/
|
||||
;(function($) {
|
||||
|
||||
var setDataSwitch = {
|
||||
dragStart: "start.draggable",
|
||||
drag: "drag.draggable",
|
||||
dragStop: "stop.draggable",
|
||||
maxHeight: "maxHeight.resizable",
|
||||
minHeight: "minHeight.resizable",
|
||||
maxWidth: "maxWidth.resizable",
|
||||
minWidth: "minWidth.resizable",
|
||||
resizeStart: "start.resizable",
|
||||
resize: "drag.resizable",
|
||||
resizeStop: "stop.resizable"
|
||||
};
|
||||
|
||||
$.widget("ui.dialog", {
|
||||
init: function() {
|
||||
var self = this,
|
||||
options = this.options,
|
||||
resizeHandles = typeof options.resizable == 'string'
|
||||
? options.resizable
|
||||
: 'n,e,s,w,se,sw,ne,nw',
|
||||
|
||||
uiDialogContent = this.element
|
||||
.addClass('ui-dialog-content')
|
||||
.wrap('<div/>')
|
||||
.wrap('<div/>'),
|
||||
|
||||
uiDialogContainer = uiDialogContent.parent()
|
||||
.addClass('ui-dialog-container')
|
||||
.css({position: 'relative'}),
|
||||
|
||||
title = options.title || uiDialogContent.attr('title') || '',
|
||||
uiDialogTitlebar = (this.uiDialogTitlebar =
|
||||
$('<div class="ui-dialog-titlebar"/>'))
|
||||
.append('<span class="ui-dialog-title">' + title + '</span>')
|
||||
.append('<a href="#" class="ui-dialog-titlebar-close"><span>X</span></a>')
|
||||
.prependTo(uiDialogContainer),
|
||||
|
||||
uiDialog = (this.uiDialog = uiDialogContainer.parent())
|
||||
.hide()
|
||||
.appendTo(document.body)
|
||||
.addClass('ui-dialog')
|
||||
.addClass(options.dialogClass)
|
||||
// add content classes to dialog
|
||||
// to inherit theme at top level of element
|
||||
.addClass(uiDialogContent.attr('className'))
|
||||
.removeClass('ui-dialog-content')
|
||||
.css({
|
||||
position: 'absolute',
|
||||
width: options.width,
|
||||
height: options.height,
|
||||
overflow: 'hidden',
|
||||
zIndex: options.zIndex
|
||||
})
|
||||
// setting tabIndex makes the div focusable
|
||||
// setting outline to 0 prevents a border on focus in Mozilla
|
||||
.attr('tabIndex', -1).css('outline', 0).keydown(function(ev) {
|
||||
if (options.closeOnEscape) {
|
||||
var ESC = 27;
|
||||
(ev.keyCode && ev.keyCode == ESC && self.close());
|
||||
}
|
||||
})
|
||||
.mousedown(function() {
|
||||
self.moveToTop();
|
||||
});
|
||||
|
||||
this.uiDialogTitlebarClose = $('.ui-dialog-titlebar-close', uiDialogTitlebar)
|
||||
.hover(
|
||||
function() {
|
||||
$(this).addClass('ui-dialog-titlebar-close-hover');
|
||||
},
|
||||
function() {
|
||||
$(this).removeClass('ui-dialog-titlebar-close-hover');
|
||||
}
|
||||
)
|
||||
.mousedown(function(ev) {
|
||||
ev.stopPropagation();
|
||||
})
|
||||
.click(function() {
|
||||
self.close();
|
||||
return false;
|
||||
});
|
||||
|
||||
var hasButtons = false;
|
||||
$.each(options.buttons, function() { return !(hasButtons = true); });
|
||||
if (hasButtons) {
|
||||
var uiDialogButtonPane = $('<div class="ui-dialog-buttonpane"/>')
|
||||
.appendTo(uiDialog);
|
||||
$.each(options.buttons, function(name, fn) {
|
||||
$('<button/>')
|
||||
.text(name)
|
||||
.click(function() { fn.apply(self.element, arguments); })
|
||||
.appendTo(uiDialogButtonPane);
|
||||
});
|
||||
}
|
||||
|
||||
if ($.fn.draggable) {
|
||||
uiDialog.draggable({
|
||||
handle: '.ui-dialog-titlebar',
|
||||
start: function(e, ui) {
|
||||
self.moveToTop();
|
||||
(options.dragStart && options.dragStart.apply(this, arguments));
|
||||
},
|
||||
drag: options.drag,
|
||||
stop: function(e, ui) {
|
||||
(options.dragStop && options.dragStop.apply(this, arguments));
|
||||
$.ui.dialog.overlay.resize();
|
||||
}
|
||||
});
|
||||
(options.draggable || uiDialog.draggable('disable'));
|
||||
}
|
||||
|
||||
if ($.fn.resizable) {
|
||||
uiDialog.resizable({
|
||||
maxWidth: options.maxWidth,
|
||||
maxHeight: options.maxHeight,
|
||||
minWidth: options.minWidth,
|
||||
minHeight: options.minHeight,
|
||||
start: options.resizeStart,
|
||||
resize: options.resize,
|
||||
handles: resizeHandles,
|
||||
stop: function(e, ui) {
|
||||
(options.resizeStop && options.resizeStop.apply(this, arguments));
|
||||
$.ui.dialog.overlay.resize();
|
||||
}
|
||||
});
|
||||
(options.resizable || uiDialog.resizable('disable'));
|
||||
}
|
||||
|
||||
(options.bgiframe && $.fn.bgiframe && uiDialog.bgiframe());
|
||||
(options.autoOpen && this.open());
|
||||
},
|
||||
|
||||
setData: function(key, value){
|
||||
(setDataSwitch[key] && this.uiDialog.data(setDataSwitch[key], value));
|
||||
switch (key) {
|
||||
case "draggable":
|
||||
this.uiDialog.draggable(value ? 'enable' : 'disable');
|
||||
break;
|
||||
case "height":
|
||||
this.uiDialog.height(value);
|
||||
break;
|
||||
case "position":
|
||||
this.position(value);
|
||||
break;
|
||||
case "resizable":
|
||||
(typeof value == 'string' && this.uiDialog.data('handles.resizable', value));
|
||||
this.uiDialog.resizable(value ? 'enable' : 'disable');
|
||||
break;
|
||||
case "title":
|
||||
$(".ui-dialog-title", this.uiDialogTitlebar).text(value);
|
||||
break;
|
||||
case "width":
|
||||
this.uiDialog.width(value);
|
||||
break;
|
||||
}
|
||||
this.options[key] = value;
|
||||
},
|
||||
|
||||
position: function(pos) {
|
||||
var wnd = $(window), doc = $(document),
|
||||
pTop = doc.scrollTop(), pLeft = doc.scrollLeft(),
|
||||
minTop = pTop;
|
||||
|
||||
if ($.inArray(pos, ['center','top','right','bottom','left']) >= 0) {
|
||||
pos = [
|
||||
pos == 'right' || pos == 'left' ? pos : 'center',
|
||||
pos == 'top' || pos == 'bottom' ? pos : 'middle'
|
||||
];
|
||||
}
|
||||
if (pos.constructor != Array) {
|
||||
pos = ['center', 'middle'];
|
||||
}
|
||||
if (pos[0].constructor == Number) {
|
||||
pLeft += pos[0];
|
||||
} else {
|
||||
switch (pos[0]) {
|
||||
case 'left':
|
||||
pLeft += 0;
|
||||
break;
|
||||
case 'right':
|
||||
pLeft += (wnd.width()) - (this.uiDialog.width());
|
||||
break;
|
||||
default:
|
||||
case 'center':
|
||||
pLeft += (wnd.width() / 2) - (this.uiDialog.width() / 2);
|
||||
}
|
||||
}
|
||||
if (pos[1].constructor == Number) {
|
||||
pTop += pos[1];
|
||||
} else {
|
||||
switch (pos[1]) {
|
||||
case 'top':
|
||||
pTop += 0;
|
||||
break;
|
||||
case 'bottom':
|
||||
pTop += (wnd.height()) - (this.uiDialog.height());
|
||||
break;
|
||||
default:
|
||||
case 'middle':
|
||||
pTop += (wnd.height() / 2) - (this.uiDialog.height() / 2);
|
||||
}
|
||||
}
|
||||
|
||||
// prevent the dialog from being too high (make sure the titlebar
|
||||
// is accessible)
|
||||
pTop = Math.max(pTop, minTop);
|
||||
this.uiDialog.css({top: pTop, left: pLeft});
|
||||
},
|
||||
|
||||
open: function() {
|
||||
this.overlay = this.options.modal ? new $.ui.dialog.overlay(this) : null;
|
||||
this.uiDialog.appendTo('body');
|
||||
this.position(this.options.position);
|
||||
this.uiDialog.show();
|
||||
this.moveToTop();
|
||||
|
||||
// CALLBACK: open
|
||||
var openEV = null;
|
||||
var openUI = {
|
||||
options: this.options
|
||||
};
|
||||
this.uiDialogTitlebarClose.focus();
|
||||
this.element.triggerHandler("dialogopen", [openEV, openUI], this.options.open);
|
||||
},
|
||||
|
||||
moveToTop: function() {
|
||||
if (this.options.modal || !this.options.stack) { return; }
|
||||
|
||||
var maxZ = this.options.zIndex, options = this.options;
|
||||
$('.ui-dialog:visible').each(function() {
|
||||
maxZ = Math.max(maxZ, parseInt($(this).css('z-index'), 10) || options.zIndex);
|
||||
});
|
||||
(this.overlay && this.overlay.$el.css('z-index', ++maxZ));
|
||||
this.uiDialog.css('z-index', ++maxZ);
|
||||
},
|
||||
|
||||
close: function() {
|
||||
(this.overlay && this.overlay.destroy());
|
||||
this.uiDialog.hide();
|
||||
|
||||
// CALLBACK: close
|
||||
var closeEV = null;
|
||||
var closeUI = {
|
||||
options: this.options
|
||||
};
|
||||
this.element.triggerHandler("dialogclose", [closeEV, closeUI], this.options.close);
|
||||
$.ui.dialog.overlay.resize();
|
||||
},
|
||||
|
||||
destroy: function() {
|
||||
(this.overlay && this.overlay.destroy());
|
||||
this.uiDialog.hide();
|
||||
this.element
|
||||
.unbind('.dialog')
|
||||
.removeData('dialog')
|
||||
.removeClass('ui-dialog-content')
|
||||
.hide().appendTo('body');
|
||||
this.uiDialog.remove();
|
||||
}
|
||||
});
|
||||
|
||||
$.extend($.ui.dialog, {
|
||||
defaults: {
|
||||
autoOpen: true,
|
||||
bgiframe: false,
|
||||
buttons: {},
|
||||
closeOnEscape: true,
|
||||
draggable: true,
|
||||
height: 200,
|
||||
minHeight: 100,
|
||||
minWidth: 150,
|
||||
modal: false,
|
||||
overlay: {},
|
||||
position: 'center',
|
||||
resizable: true,
|
||||
stack: true,
|
||||
width: 300,
|
||||
zIndex: 1000
|
||||
},
|
||||
|
||||
overlay: function(dialog) {
|
||||
this.$el = $.ui.dialog.overlay.create(dialog);
|
||||
}
|
||||
});
|
||||
|
||||
$.extend($.ui.dialog.overlay, {
|
||||
instances: [],
|
||||
events: $.map('focus,mousedown,mouseup,keydown,keypress,click'.split(','),
|
||||
function(e) { return e + '.dialog-overlay'; }).join(' '),
|
||||
create: function(dialog) {
|
||||
if (this.instances.length === 0) {
|
||||
// prevent use of anchors and inputs
|
||||
// we use a setTimeout in case the overlay is created from an
|
||||
// event that we're going to be cancelling (see #2804)
|
||||
setTimeout(function() {
|
||||
$('a, :input').bind($.ui.dialog.overlay.events, function() {
|
||||
// allow use of the element if inside a dialog and
|
||||
// - there are no modal dialogs
|
||||
// - there are modal dialogs, but we are in front of the topmost modal
|
||||
var allow = false;
|
||||
var $dialog = $(this).parents('.ui-dialog');
|
||||
if ($dialog.length) {
|
||||
var $overlays = $('.ui-dialog-overlay');
|
||||
if ($overlays.length) {
|
||||
var maxZ = parseInt($overlays.css('z-index'), 10);
|
||||
$overlays.each(function() {
|
||||
maxZ = Math.max(maxZ, parseInt($(this).css('z-index'), 10));
|
||||
});
|
||||
allow = parseInt($dialog.css('z-index'), 10) > maxZ;
|
||||
} else {
|
||||
allow = true;
|
||||
}
|
||||
}
|
||||
return allow;
|
||||
});
|
||||
}, 1);
|
||||
|
||||
// allow closing by pressing the escape key
|
||||
$(document).bind('keydown.dialog-overlay', function(e) {
|
||||
var ESC = 27;
|
||||
(e.keyCode && e.keyCode == ESC && dialog.close());
|
||||
});
|
||||
|
||||
// handle window resize
|
||||
$(window).bind('resize.dialog-overlay', $.ui.dialog.overlay.resize);
|
||||
}
|
||||
|
||||
var $el = $('<div/>').appendTo(document.body)
|
||||
.addClass('ui-dialog-overlay').css($.extend({
|
||||
borderWidth: 0, margin: 0, padding: 0,
|
||||
position: 'absolute', top: 0, left: 0,
|
||||
width: this.width(),
|
||||
height: this.height()
|
||||
}, dialog.options.overlay));
|
||||
|
||||
(dialog.options.bgiframe && $.fn.bgiframe && $el.bgiframe());
|
||||
|
||||
this.instances.push($el);
|
||||
return $el;
|
||||
},
|
||||
|
||||
destroy: function($el) {
|
||||
this.instances.splice($.inArray(this.instances, $el), 1);
|
||||
|
||||
if (this.instances.length === 0) {
|
||||
$('a, :input').add([document, window]).unbind('.dialog-overlay');
|
||||
}
|
||||
|
||||
$el.remove();
|
||||
},
|
||||
|
||||
height: function() {
|
||||
if ($.browser.msie && $.browser.version < 7) {
|
||||
var scrollHeight = Math.max(
|
||||
document.documentElement.scrollHeight,
|
||||
document.body.scrollHeight
|
||||
);
|
||||
var offsetHeight = Math.max(
|
||||
document.documentElement.offsetHeight,
|
||||
document.body.offsetHeight
|
||||
);
|
||||
|
||||
if (scrollHeight < offsetHeight) {
|
||||
return $(window).height() + 'px';
|
||||
} else {
|
||||
return scrollHeight + 'px';
|
||||
}
|
||||
} else {
|
||||
return $(document).height() + 'px';
|
||||
}
|
||||
},
|
||||
|
||||
width: function() {
|
||||
if ($.browser.msie && $.browser.version < 7) {
|
||||
var scrollWidth = Math.max(
|
||||
document.documentElement.scrollWidth,
|
||||
document.body.scrollWidth
|
||||
);
|
||||
var offsetWidth = Math.max(
|
||||
document.documentElement.offsetWidth,
|
||||
document.body.offsetWidth
|
||||
);
|
||||
|
||||
if (scrollWidth < offsetWidth) {
|
||||
return $(window).width() + 'px';
|
||||
} else {
|
||||
return scrollWidth + 'px';
|
||||
}
|
||||
} else {
|
||||
return $(document).width() + 'px';
|
||||
}
|
||||
},
|
||||
|
||||
resize: function() {
|
||||
/* If the dialog is draggable and the user drags it past the
|
||||
* right edge of the window, the document becomes wider so we
|
||||
* need to stretch the overlay. If the user then drags the
|
||||
* dialog back to the left, the document will become narrower,
|
||||
* so we need to shrink the overlay to the appropriate size.
|
||||
* This is handled by shrinking the overlay before setting it
|
||||
* to the full document size.
|
||||
*/
|
||||
var $overlays = $([]);
|
||||
$.each($.ui.dialog.overlay.instances, function() {
|
||||
$overlays = $overlays.add(this);
|
||||
});
|
||||
|
||||
$overlays.css({
|
||||
width: 0,
|
||||
height: 0
|
||||
}).css({
|
||||
width: $.ui.dialog.overlay.width(),
|
||||
height: $.ui.dialog.overlay.height()
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
$.extend($.ui.dialog.overlay.prototype, {
|
||||
destroy: function() {
|
||||
$.ui.dialog.overlay.destroy(this.$el);
|
||||
}
|
||||
});
|
||||
|
||||
})(jQuery);
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,291 +1,291 @@
|
||||
/*
|
||||
* jQuery UI Droppable
|
||||
*
|
||||
* Copyright (c) 2008 Paul Bakaus
|
||||
* Dual licensed under the MIT (MIT-LICENSE.txt)
|
||||
* and GPL (GPL-LICENSE.txt) licenses.
|
||||
*
|
||||
* http://docs.jquery.com/UI/Droppables
|
||||
*
|
||||
* Depends:
|
||||
* ui.core.js
|
||||
* ui.draggable.js
|
||||
*
|
||||
* Revision: $Id: ui.droppable.js 5568 2008-05-12 15:07:16Z paul.bakaus $
|
||||
*/
|
||||
;(function($) {
|
||||
|
||||
$.widget("ui.droppable", {
|
||||
init: function() {
|
||||
|
||||
this.element.addClass("ui-droppable");
|
||||
this.isover = 0; this.isout = 1;
|
||||
|
||||
//Prepare the passed options
|
||||
var o = this.options, accept = o.accept;
|
||||
o = $.extend(o, {
|
||||
accept: o.accept && o.accept.constructor == Function ? o.accept : function(d) {
|
||||
return $(d).is(accept);
|
||||
}
|
||||
});
|
||||
|
||||
//Store the droppable's proportions
|
||||
this.proportions = { width: this.element.outerWidth(), height: this.element.outerHeight() };
|
||||
|
||||
// Add the reference and positions to the manager
|
||||
$.ui.ddmanager.droppables.push(this);
|
||||
|
||||
},
|
||||
plugins: {},
|
||||
ui: function(c) {
|
||||
return {
|
||||
instance: this,
|
||||
draggable: (c.currentItem || c.element),
|
||||
helper: c.helper,
|
||||
position: c.position,
|
||||
absolutePosition: c.positionAbs,
|
||||
options: this.options,
|
||||
element: this.element
|
||||
};
|
||||
},
|
||||
destroy: function() {
|
||||
var drop = $.ui.ddmanager.droppables;
|
||||
for ( var i = 0; i < drop.length; i++ )
|
||||
if ( drop[i] == this )
|
||||
drop.splice(i, 1);
|
||||
|
||||
this.element
|
||||
.removeClass("ui-droppable ui-droppable-disabled")
|
||||
.removeData("droppable")
|
||||
.unbind(".droppable");
|
||||
},
|
||||
enable: function() {
|
||||
this.element.removeClass("ui-droppable-disabled");
|
||||
this.options.disabled = false;
|
||||
},
|
||||
disable: function() {
|
||||
this.element.addClass("ui-droppable-disabled");
|
||||
this.options.disabled = true;
|
||||
},
|
||||
over: function(e) {
|
||||
|
||||
var draggable = $.ui.ddmanager.current;
|
||||
if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element
|
||||
|
||||
if (this.options.accept.call(this.element,(draggable.currentItem || draggable.element))) {
|
||||
$.ui.plugin.call(this, 'over', [e, this.ui(draggable)]);
|
||||
this.element.triggerHandler("dropover", [e, this.ui(draggable)], this.options.over);
|
||||
}
|
||||
|
||||
},
|
||||
out: function(e) {
|
||||
|
||||
var draggable = $.ui.ddmanager.current;
|
||||
if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element
|
||||
|
||||
if (this.options.accept.call(this.element,(draggable.currentItem || draggable.element))) {
|
||||
$.ui.plugin.call(this, 'out', [e, this.ui(draggable)]);
|
||||
this.element.triggerHandler("dropout", [e, this.ui(draggable)], this.options.out);
|
||||
}
|
||||
|
||||
},
|
||||
drop: function(e,custom) {
|
||||
|
||||
var draggable = custom || $.ui.ddmanager.current;
|
||||
if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return false; // Bail if draggable and droppable are same element
|
||||
|
||||
var childrenIntersection = false;
|
||||
this.element.find(".ui-droppable").not(".ui-draggable-dragging").each(function() {
|
||||
var inst = $.data(this, 'droppable');
|
||||
if(inst.options.greedy && $.ui.intersect(draggable, $.extend(inst, { offset: inst.element.offset() }), inst.options.tolerance)) {
|
||||
childrenIntersection = true; return false;
|
||||
}
|
||||
});
|
||||
if(childrenIntersection) return false;
|
||||
|
||||
if(this.options.accept.call(this.element,(draggable.currentItem || draggable.element))) {
|
||||
$.ui.plugin.call(this, 'drop', [e, this.ui(draggable)]);
|
||||
this.element.triggerHandler("drop", [e, this.ui(draggable)], this.options.drop);
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
|
||||
},
|
||||
activate: function(e) {
|
||||
|
||||
var draggable = $.ui.ddmanager.current;
|
||||
$.ui.plugin.call(this, 'activate', [e, this.ui(draggable)]);
|
||||
if(draggable) this.element.triggerHandler("dropactivate", [e, this.ui(draggable)], this.options.activate);
|
||||
|
||||
},
|
||||
deactivate: function(e) {
|
||||
|
||||
var draggable = $.ui.ddmanager.current;
|
||||
$.ui.plugin.call(this, 'deactivate', [e, this.ui(draggable)]);
|
||||
if(draggable) this.element.triggerHandler("dropdeactivate", [e, this.ui(draggable)], this.options.deactivate);
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
$.extend($.ui.droppable, {
|
||||
defaults: {
|
||||
disabled: false,
|
||||
tolerance: 'intersect'
|
||||
}
|
||||
});
|
||||
|
||||
$.ui.intersect = function(draggable, droppable, toleranceMode) {
|
||||
|
||||
if (!droppable.offset) return false;
|
||||
|
||||
var x1 = (draggable.positionAbs || draggable.position.absolute).left, x2 = x1 + draggable.helperProportions.width,
|
||||
y1 = (draggable.positionAbs || draggable.position.absolute).top, y2 = y1 + draggable.helperProportions.height;
|
||||
var l = droppable.offset.left, r = l + droppable.proportions.width,
|
||||
t = droppable.offset.top, b = t + droppable.proportions.height;
|
||||
|
||||
switch (toleranceMode) {
|
||||
case 'fit':
|
||||
return (l < x1 && x2 < r
|
||||
&& t < y1 && y2 < b);
|
||||
break;
|
||||
case 'intersect':
|
||||
return (l < x1 + (draggable.helperProportions.width / 2) // Right Half
|
||||
&& x2 - (draggable.helperProportions.width / 2) < r // Left Half
|
||||
&& t < y1 + (draggable.helperProportions.height / 2) // Bottom Half
|
||||
&& y2 - (draggable.helperProportions.height / 2) < b ); // Top Half
|
||||
break;
|
||||
case 'pointer':
|
||||
return (l < ((draggable.positionAbs || draggable.position.absolute).left + (draggable.clickOffset || draggable.offset.click).left) && ((draggable.positionAbs || draggable.position.absolute).left + (draggable.clickOffset || draggable.offset.click).left) < r
|
||||
&& t < ((draggable.positionAbs || draggable.position.absolute).top + (draggable.clickOffset || draggable.offset.click).top) && ((draggable.positionAbs || draggable.position.absolute).top + (draggable.clickOffset || draggable.offset.click).top) < b);
|
||||
break;
|
||||
case 'touch':
|
||||
return (
|
||||
(y1 >= t && y1 <= b) || // Top edge touching
|
||||
(y2 >= t && y2 <= b) || // Bottom edge touching
|
||||
(y1 < t && y2 > b) // Surrounded vertically
|
||||
) && (
|
||||
(x1 >= l && x1 <= r) || // Left edge touching
|
||||
(x2 >= l && x2 <= r) || // Right edge touching
|
||||
(x1 < l && x2 > r) // Surrounded horizontally
|
||||
);
|
||||
break;
|
||||
default:
|
||||
return false;
|
||||
break;
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
/*
|
||||
This manager tracks offsets of draggables and droppables
|
||||
*/
|
||||
$.ui.ddmanager = {
|
||||
current: null,
|
||||
droppables: [],
|
||||
prepareOffsets: function(t, e) {
|
||||
|
||||
var m = $.ui.ddmanager.droppables;
|
||||
var type = e ? e.type : null; // workaround for #2317
|
||||
for (var i = 0; i < m.length; i++) {
|
||||
|
||||
if(m[i].options.disabled || (t && !m[i].options.accept.call(m[i].element,(t.currentItem || t.element)))) continue;
|
||||
m[i].visible = m[i].element.is(":visible"); if(!m[i].visible) continue; //If the element is not visible, continue
|
||||
m[i].offset = m[i].element.offset();
|
||||
m[i].proportions = { width: m[i].element.outerWidth(), height: m[i].element.outerHeight() };
|
||||
|
||||
if(type == "dragstart" || type == "sortactivate") m[i].activate.call(m[i], e); //Activate the droppable if used directly from draggables
|
||||
}
|
||||
|
||||
},
|
||||
drop: function(draggable, e) {
|
||||
|
||||
var dropped = false;
|
||||
$.each($.ui.ddmanager.droppables, function() {
|
||||
|
||||
if(!this.options) return;
|
||||
if (!this.options.disabled && this.visible && $.ui.intersect(draggable, this, this.options.tolerance))
|
||||
dropped = this.drop.call(this, e);
|
||||
|
||||
if (!this.options.disabled && this.visible && this.options.accept.call(this.element,(draggable.currentItem || draggable.element))) {
|
||||
this.isout = 1; this.isover = 0;
|
||||
this.deactivate.call(this, e);
|
||||
}
|
||||
|
||||
});
|
||||
return dropped;
|
||||
|
||||
},
|
||||
drag: function(draggable, e) {
|
||||
|
||||
//If you have a highly dynamic page, you might try this option. It renders positions every time you move the mouse.
|
||||
if(draggable.options.refreshPositions) $.ui.ddmanager.prepareOffsets(draggable, e);
|
||||
|
||||
//Run through all droppables and check their positions based on specific tolerance options
|
||||
$.each($.ui.ddmanager.droppables, function() {
|
||||
|
||||
if(this.disabled || this.greedyChild || !this.visible) return;
|
||||
var intersects = $.ui.intersect(draggable, this, this.options.tolerance);
|
||||
|
||||
var c = !intersects && this.isover == 1 ? 'isout' : (intersects && this.isover == 0 ? 'isover' : null);
|
||||
if(!c) return;
|
||||
|
||||
var parentInstance;
|
||||
if (this.options.greedy) {
|
||||
var parent = this.element.parents('.ui-droppable:eq(0)');
|
||||
if (parent.length) {
|
||||
parentInstance = $.data(parent[0], 'droppable');
|
||||
parentInstance.greedyChild = (c == 'isover' ? 1 : 0);
|
||||
}
|
||||
}
|
||||
|
||||
// we just moved into a greedy child
|
||||
if (parentInstance && c == 'isover') {
|
||||
parentInstance['isover'] = 0;
|
||||
parentInstance['isout'] = 1;
|
||||
parentInstance.out.call(parentInstance, e);
|
||||
}
|
||||
|
||||
this[c] = 1; this[c == 'isout' ? 'isover' : 'isout'] = 0;
|
||||
this[c == "isover" ? "over" : "out"].call(this, e);
|
||||
|
||||
// we just moved out of a greedy child
|
||||
if (parentInstance && c == 'isout') {
|
||||
parentInstance['isout'] = 0;
|
||||
parentInstance['isover'] = 1;
|
||||
parentInstance.over.call(parentInstance, e);
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
/*
|
||||
* Droppable Extensions
|
||||
*/
|
||||
|
||||
$.ui.plugin.add("droppable", "activeClass", {
|
||||
activate: function(e, ui) {
|
||||
$(this).addClass(ui.options.activeClass);
|
||||
},
|
||||
deactivate: function(e, ui) {
|
||||
$(this).removeClass(ui.options.activeClass);
|
||||
},
|
||||
drop: function(e, ui) {
|
||||
$(this).removeClass(ui.options.activeClass);
|
||||
}
|
||||
});
|
||||
|
||||
$.ui.plugin.add("droppable", "hoverClass", {
|
||||
over: function(e, ui) {
|
||||
$(this).addClass(ui.options.hoverClass);
|
||||
},
|
||||
out: function(e, ui) {
|
||||
$(this).removeClass(ui.options.hoverClass);
|
||||
},
|
||||
drop: function(e, ui) {
|
||||
$(this).removeClass(ui.options.hoverClass);
|
||||
}
|
||||
});
|
||||
|
||||
})(jQuery);
|
||||
/*
|
||||
* jQuery UI Droppable
|
||||
*
|
||||
* Copyright (c) 2008 Paul Bakaus
|
||||
* Dual licensed under the MIT (MIT-LICENSE.txt)
|
||||
* and GPL (GPL-LICENSE.txt) licenses.
|
||||
*
|
||||
* http://docs.jquery.com/UI/Droppables
|
||||
*
|
||||
* Depends:
|
||||
* ui.core.js
|
||||
* ui.draggable.js
|
||||
*
|
||||
* Revision: $Id: ui.droppable.js 5568 2008-05-12 15:07:16Z paul.bakaus $
|
||||
*/
|
||||
;(function($) {
|
||||
|
||||
$.widget("ui.droppable", {
|
||||
init: function() {
|
||||
|
||||
this.element.addClass("ui-droppable");
|
||||
this.isover = 0; this.isout = 1;
|
||||
|
||||
//Prepare the passed options
|
||||
var o = this.options, accept = o.accept;
|
||||
o = $.extend(o, {
|
||||
accept: o.accept && o.accept.constructor == Function ? o.accept : function(d) {
|
||||
return $(d).is(accept);
|
||||
}
|
||||
});
|
||||
|
||||
//Store the droppable's proportions
|
||||
this.proportions = { width: this.element.outerWidth(), height: this.element.outerHeight() };
|
||||
|
||||
// Add the reference and positions to the manager
|
||||
$.ui.ddmanager.droppables.push(this);
|
||||
|
||||
},
|
||||
plugins: {},
|
||||
ui: function(c) {
|
||||
return {
|
||||
instance: this,
|
||||
draggable: (c.currentItem || c.element),
|
||||
helper: c.helper,
|
||||
position: c.position,
|
||||
absolutePosition: c.positionAbs,
|
||||
options: this.options,
|
||||
element: this.element
|
||||
};
|
||||
},
|
||||
destroy: function() {
|
||||
var drop = $.ui.ddmanager.droppables;
|
||||
for ( var i = 0; i < drop.length; i++ )
|
||||
if ( drop[i] == this )
|
||||
drop.splice(i, 1);
|
||||
|
||||
this.element
|
||||
.removeClass("ui-droppable ui-droppable-disabled")
|
||||
.removeData("droppable")
|
||||
.unbind(".droppable");
|
||||
},
|
||||
enable: function() {
|
||||
this.element.removeClass("ui-droppable-disabled");
|
||||
this.options.disabled = false;
|
||||
},
|
||||
disable: function() {
|
||||
this.element.addClass("ui-droppable-disabled");
|
||||
this.options.disabled = true;
|
||||
},
|
||||
over: function(e) {
|
||||
|
||||
var draggable = $.ui.ddmanager.current;
|
||||
if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element
|
||||
|
||||
if (this.options.accept.call(this.element,(draggable.currentItem || draggable.element))) {
|
||||
$.ui.plugin.call(this, 'over', [e, this.ui(draggable)]);
|
||||
this.element.triggerHandler("dropover", [e, this.ui(draggable)], this.options.over);
|
||||
}
|
||||
|
||||
},
|
||||
out: function(e) {
|
||||
|
||||
var draggable = $.ui.ddmanager.current;
|
||||
if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element
|
||||
|
||||
if (this.options.accept.call(this.element,(draggable.currentItem || draggable.element))) {
|
||||
$.ui.plugin.call(this, 'out', [e, this.ui(draggable)]);
|
||||
this.element.triggerHandler("dropout", [e, this.ui(draggable)], this.options.out);
|
||||
}
|
||||
|
||||
},
|
||||
drop: function(e,custom) {
|
||||
|
||||
var draggable = custom || $.ui.ddmanager.current;
|
||||
if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return false; // Bail if draggable and droppable are same element
|
||||
|
||||
var childrenIntersection = false;
|
||||
this.element.find(".ui-droppable").not(".ui-draggable-dragging").each(function() {
|
||||
var inst = $.data(this, 'droppable');
|
||||
if(inst.options.greedy && $.ui.intersect(draggable, $.extend(inst, { offset: inst.element.offset() }), inst.options.tolerance)) {
|
||||
childrenIntersection = true; return false;
|
||||
}
|
||||
});
|
||||
if(childrenIntersection) return false;
|
||||
|
||||
if(this.options.accept.call(this.element,(draggable.currentItem || draggable.element))) {
|
||||
$.ui.plugin.call(this, 'drop', [e, this.ui(draggable)]);
|
||||
this.element.triggerHandler("drop", [e, this.ui(draggable)], this.options.drop);
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
|
||||
},
|
||||
activate: function(e) {
|
||||
|
||||
var draggable = $.ui.ddmanager.current;
|
||||
$.ui.plugin.call(this, 'activate', [e, this.ui(draggable)]);
|
||||
if(draggable) this.element.triggerHandler("dropactivate", [e, this.ui(draggable)], this.options.activate);
|
||||
|
||||
},
|
||||
deactivate: function(e) {
|
||||
|
||||
var draggable = $.ui.ddmanager.current;
|
||||
$.ui.plugin.call(this, 'deactivate', [e, this.ui(draggable)]);
|
||||
if(draggable) this.element.triggerHandler("dropdeactivate", [e, this.ui(draggable)], this.options.deactivate);
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
$.extend($.ui.droppable, {
|
||||
defaults: {
|
||||
disabled: false,
|
||||
tolerance: 'intersect'
|
||||
}
|
||||
});
|
||||
|
||||
$.ui.intersect = function(draggable, droppable, toleranceMode) {
|
||||
|
||||
if (!droppable.offset) return false;
|
||||
|
||||
var x1 = (draggable.positionAbs || draggable.position.absolute).left, x2 = x1 + draggable.helperProportions.width,
|
||||
y1 = (draggable.positionAbs || draggable.position.absolute).top, y2 = y1 + draggable.helperProportions.height;
|
||||
var l = droppable.offset.left, r = l + droppable.proportions.width,
|
||||
t = droppable.offset.top, b = t + droppable.proportions.height;
|
||||
|
||||
switch (toleranceMode) {
|
||||
case 'fit':
|
||||
return (l < x1 && x2 < r
|
||||
&& t < y1 && y2 < b);
|
||||
break;
|
||||
case 'intersect':
|
||||
return (l < x1 + (draggable.helperProportions.width / 2) // Right Half
|
||||
&& x2 - (draggable.helperProportions.width / 2) < r // Left Half
|
||||
&& t < y1 + (draggable.helperProportions.height / 2) // Bottom Half
|
||||
&& y2 - (draggable.helperProportions.height / 2) < b ); // Top Half
|
||||
break;
|
||||
case 'pointer':
|
||||
return (l < ((draggable.positionAbs || draggable.position.absolute).left + (draggable.clickOffset || draggable.offset.click).left) && ((draggable.positionAbs || draggable.position.absolute).left + (draggable.clickOffset || draggable.offset.click).left) < r
|
||||
&& t < ((draggable.positionAbs || draggable.position.absolute).top + (draggable.clickOffset || draggable.offset.click).top) && ((draggable.positionAbs || draggable.position.absolute).top + (draggable.clickOffset || draggable.offset.click).top) < b);
|
||||
break;
|
||||
case 'touch':
|
||||
return (
|
||||
(y1 >= t && y1 <= b) || // Top edge touching
|
||||
(y2 >= t && y2 <= b) || // Bottom edge touching
|
||||
(y1 < t && y2 > b) // Surrounded vertically
|
||||
) && (
|
||||
(x1 >= l && x1 <= r) || // Left edge touching
|
||||
(x2 >= l && x2 <= r) || // Right edge touching
|
||||
(x1 < l && x2 > r) // Surrounded horizontally
|
||||
);
|
||||
break;
|
||||
default:
|
||||
return false;
|
||||
break;
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
/*
|
||||
This manager tracks offsets of draggables and droppables
|
||||
*/
|
||||
$.ui.ddmanager = {
|
||||
current: null,
|
||||
droppables: [],
|
||||
prepareOffsets: function(t, e) {
|
||||
|
||||
var m = $.ui.ddmanager.droppables;
|
||||
var type = e ? e.type : null; // workaround for #2317
|
||||
for (var i = 0; i < m.length; i++) {
|
||||
|
||||
if(m[i].options.disabled || (t && !m[i].options.accept.call(m[i].element,(t.currentItem || t.element)))) continue;
|
||||
m[i].visible = m[i].element.is(":visible"); if(!m[i].visible) continue; //If the element is not visible, continue
|
||||
m[i].offset = m[i].element.offset();
|
||||
m[i].proportions = { width: m[i].element.outerWidth(), height: m[i].element.outerHeight() };
|
||||
|
||||
if(type == "dragstart" || type == "sortactivate") m[i].activate.call(m[i], e); //Activate the droppable if used directly from draggables
|
||||
}
|
||||
|
||||
},
|
||||
drop: function(draggable, e) {
|
||||
|
||||
var dropped = false;
|
||||
$.each($.ui.ddmanager.droppables, function() {
|
||||
|
||||
if(!this.options) return;
|
||||
if (!this.options.disabled && this.visible && $.ui.intersect(draggable, this, this.options.tolerance))
|
||||
dropped = this.drop.call(this, e);
|
||||
|
||||
if (!this.options.disabled && this.visible && this.options.accept.call(this.element,(draggable.currentItem || draggable.element))) {
|
||||
this.isout = 1; this.isover = 0;
|
||||
this.deactivate.call(this, e);
|
||||
}
|
||||
|
||||
});
|
||||
return dropped;
|
||||
|
||||
},
|
||||
drag: function(draggable, e) {
|
||||
|
||||
//If you have a highly dynamic page, you might try this option. It renders positions every time you move the mouse.
|
||||
if(draggable.options.refreshPositions) $.ui.ddmanager.prepareOffsets(draggable, e);
|
||||
|
||||
//Run through all droppables and check their positions based on specific tolerance options
|
||||
$.each($.ui.ddmanager.droppables, function() {
|
||||
|
||||
if(this.disabled || this.greedyChild || !this.visible) return;
|
||||
var intersects = $.ui.intersect(draggable, this, this.options.tolerance);
|
||||
|
||||
var c = !intersects && this.isover == 1 ? 'isout' : (intersects && this.isover == 0 ? 'isover' : null);
|
||||
if(!c) return;
|
||||
|
||||
var parentInstance;
|
||||
if (this.options.greedy) {
|
||||
var parent = this.element.parents('.ui-droppable:eq(0)');
|
||||
if (parent.length) {
|
||||
parentInstance = $.data(parent[0], 'droppable');
|
||||
parentInstance.greedyChild = (c == 'isover' ? 1 : 0);
|
||||
}
|
||||
}
|
||||
|
||||
// we just moved into a greedy child
|
||||
if (parentInstance && c == 'isover') {
|
||||
parentInstance['isover'] = 0;
|
||||
parentInstance['isout'] = 1;
|
||||
parentInstance.out.call(parentInstance, e);
|
||||
}
|
||||
|
||||
this[c] = 1; this[c == 'isout' ? 'isover' : 'isout'] = 0;
|
||||
this[c == "isover" ? "over" : "out"].call(this, e);
|
||||
|
||||
// we just moved out of a greedy child
|
||||
if (parentInstance && c == 'isout') {
|
||||
parentInstance['isout'] = 0;
|
||||
parentInstance['isover'] = 1;
|
||||
parentInstance.over.call(parentInstance, e);
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
/*
|
||||
* Droppable Extensions
|
||||
*/
|
||||
|
||||
$.ui.plugin.add("droppable", "activeClass", {
|
||||
activate: function(e, ui) {
|
||||
$(this).addClass(ui.options.activeClass);
|
||||
},
|
||||
deactivate: function(e, ui) {
|
||||
$(this).removeClass(ui.options.activeClass);
|
||||
},
|
||||
drop: function(e, ui) {
|
||||
$(this).removeClass(ui.options.activeClass);
|
||||
}
|
||||
});
|
||||
|
||||
$.ui.plugin.add("droppable", "hoverClass", {
|
||||
over: function(e, ui) {
|
||||
$(this).addClass(ui.options.hoverClass);
|
||||
},
|
||||
out: function(e, ui) {
|
||||
$(this).removeClass(ui.options.hoverClass);
|
||||
},
|
||||
drop: function(e, ui) {
|
||||
$(this).removeClass(ui.options.hoverClass);
|
||||
}
|
||||
});
|
||||
|
||||
})(jQuery);
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,274 +1,274 @@
|
||||
/*
|
||||
* jQuery UI Selectable
|
||||
*
|
||||
* Copyright (c) 2008 Richard D. Worth (rdworth.org)
|
||||
* Dual licensed under the MIT (MIT-LICENSE.txt)
|
||||
* and GPL (GPL-LICENSE.txt) licenses.
|
||||
*
|
||||
* http://docs.jquery.com/UI/Selectables
|
||||
*
|
||||
* Depends:
|
||||
* ui.core.js
|
||||
*
|
||||
* Revision: $Id: ui.selectable.js 5581 2008-05-13 16:58:03Z scott.gonzalez $
|
||||
*/
|
||||
;(function($) {
|
||||
|
||||
$.widget("ui.selectable", $.extend($.ui.mouse, {
|
||||
init: function() {
|
||||
var self = this;
|
||||
|
||||
this.element.addClass("ui-selectable");
|
||||
|
||||
this.dragged = false;
|
||||
|
||||
// cache selectee children based on filter
|
||||
var selectees;
|
||||
this.refresh = function() {
|
||||
selectees = $(self.options.filter, self.element[0]);
|
||||
selectees.each(function() {
|
||||
var $this = $(this);
|
||||
var pos = $this.offset();
|
||||
$.data(this, "selectable-item", {
|
||||
element: this,
|
||||
$element: $this,
|
||||
left: pos.left,
|
||||
top: pos.top,
|
||||
right: pos.left + $this.width(),
|
||||
bottom: pos.top + $this.height(),
|
||||
startselected: false,
|
||||
selected: $this.hasClass('ui-selected'),
|
||||
selecting: $this.hasClass('ui-selecting'),
|
||||
unselecting: $this.hasClass('ui-unselecting')
|
||||
});
|
||||
});
|
||||
};
|
||||
this.refresh();
|
||||
|
||||
this.selectees = selectees.addClass("ui-selectee");
|
||||
|
||||
this.mouseInit();
|
||||
|
||||
this.helper = $(document.createElement('div')).css({border:'1px dotted black'});
|
||||
},
|
||||
toggle: function() {
|
||||
if(this.options.disabled){
|
||||
this.enable();
|
||||
} else {
|
||||
this.disable();
|
||||
}
|
||||
},
|
||||
destroy: function() {
|
||||
this.element
|
||||
.removeClass("ui-selectable ui-selectable-disabled")
|
||||
.removeData("selectable")
|
||||
.unbind(".selectable");
|
||||
this.mouseDestroy();
|
||||
},
|
||||
enable: function() {
|
||||
this.element.removeClass("ui-selectable-disabled");
|
||||
this.options.disabled = false;
|
||||
},
|
||||
disable: function() {
|
||||
this.element.addClass("ui-selectable-disabled");
|
||||
this.options.disabled = true;
|
||||
},
|
||||
mouseStart: function(e) {
|
||||
var self = this;
|
||||
|
||||
this.opos = [e.pageX, e.pageY];
|
||||
|
||||
if (this.options.disabled)
|
||||
return;
|
||||
|
||||
var options = this.options;
|
||||
|
||||
this.selectees = $(options.filter, this.element[0]);
|
||||
|
||||
// selectable START callback
|
||||
this.element.triggerHandler("selectablestart", [e, {
|
||||
"selectable": this.element[0],
|
||||
"options": options
|
||||
}], options.start);
|
||||
|
||||
$('body').append(this.helper);
|
||||
// position helper (lasso)
|
||||
this.helper.css({
|
||||
"z-index": 100,
|
||||
"position": "absolute",
|
||||
"left": e.clientX,
|
||||
"top": e.clientY,
|
||||
"width": 0,
|
||||
"height": 0
|
||||
});
|
||||
|
||||
if (options.autoRefresh) {
|
||||
this.refresh();
|
||||
}
|
||||
|
||||
this.selectees.filter('.ui-selected').each(function() {
|
||||
var selectee = $.data(this, "selectable-item");
|
||||
selectee.startselected = true;
|
||||
if (!e.ctrlKey) {
|
||||
selectee.$element.removeClass('ui-selected');
|
||||
selectee.selected = false;
|
||||
selectee.$element.addClass('ui-unselecting');
|
||||
selectee.unselecting = true;
|
||||
// selectable UNSELECTING callback
|
||||
self.element.triggerHandler("selectableunselecting", [e, {
|
||||
selectable: self.element[0],
|
||||
unselecting: selectee.element,
|
||||
options: options
|
||||
}], options.unselecting);
|
||||
}
|
||||
});
|
||||
|
||||
var isSelectee = false;
|
||||
$(e.target).parents().andSelf().each(function() {
|
||||
if($.data(this, "selectable-item")) isSelectee = true;
|
||||
});
|
||||
return this.options.keyboard ? !isSelectee : true;
|
||||
},
|
||||
mouseDrag: function(e) {
|
||||
var self = this;
|
||||
this.dragged = true;
|
||||
|
||||
if (this.options.disabled)
|
||||
return;
|
||||
|
||||
var options = this.options;
|
||||
|
||||
var x1 = this.opos[0], y1 = this.opos[1], x2 = e.pageX, y2 = e.pageY;
|
||||
if (x1 > x2) { var tmp = x2; x2 = x1; x1 = tmp; }
|
||||
if (y1 > y2) { var tmp = y2; y2 = y1; y1 = tmp; }
|
||||
this.helper.css({left: x1, top: y1, width: x2-x1, height: y2-y1});
|
||||
|
||||
this.selectees.each(function() {
|
||||
var selectee = $.data(this, "selectable-item");
|
||||
//prevent helper from being selected if appendTo: selectable
|
||||
if (!selectee || selectee.element == self.element[0])
|
||||
return;
|
||||
var hit = false;
|
||||
if (options.tolerance == 'touch') {
|
||||
hit = ( !(selectee.left > x2 || selectee.right < x1 || selectee.top > y2 || selectee.bottom < y1) );
|
||||
} else if (options.tolerance == 'fit') {
|
||||
hit = (selectee.left > x1 && selectee.right < x2 && selectee.top > y1 && selectee.bottom < y2);
|
||||
}
|
||||
|
||||
if (hit) {
|
||||
// SELECT
|
||||
if (selectee.selected) {
|
||||
selectee.$element.removeClass('ui-selected');
|
||||
selectee.selected = false;
|
||||
}
|
||||
if (selectee.unselecting) {
|
||||
selectee.$element.removeClass('ui-unselecting');
|
||||
selectee.unselecting = false;
|
||||
}
|
||||
if (!selectee.selecting) {
|
||||
selectee.$element.addClass('ui-selecting');
|
||||
selectee.selecting = true;
|
||||
// selectable SELECTING callback
|
||||
self.element.triggerHandler("selectableselecting", [e, {
|
||||
selectable: self.element[0],
|
||||
selecting: selectee.element,
|
||||
options: options
|
||||
}], options.selecting);
|
||||
}
|
||||
} else {
|
||||
// UNSELECT
|
||||
if (selectee.selecting) {
|
||||
if (e.ctrlKey && selectee.startselected) {
|
||||
selectee.$element.removeClass('ui-selecting');
|
||||
selectee.selecting = false;
|
||||
selectee.$element.addClass('ui-selected');
|
||||
selectee.selected = true;
|
||||
} else {
|
||||
selectee.$element.removeClass('ui-selecting');
|
||||
selectee.selecting = false;
|
||||
if (selectee.startselected) {
|
||||
selectee.$element.addClass('ui-unselecting');
|
||||
selectee.unselecting = true;
|
||||
}
|
||||
// selectable UNSELECTING callback
|
||||
self.element.triggerHandler("selectableunselecting", [e, {
|
||||
selectable: self.element[0],
|
||||
unselecting: selectee.element,
|
||||
options: options
|
||||
}], options.unselecting);
|
||||
}
|
||||
}
|
||||
if (selectee.selected) {
|
||||
if (!e.ctrlKey && !selectee.startselected) {
|
||||
selectee.$element.removeClass('ui-selected');
|
||||
selectee.selected = false;
|
||||
|
||||
selectee.$element.addClass('ui-unselecting');
|
||||
selectee.unselecting = true;
|
||||
// selectable UNSELECTING callback
|
||||
self.element.triggerHandler("selectableunselecting", [e, {
|
||||
selectable: self.element[0],
|
||||
unselecting: selectee.element,
|
||||
options: options
|
||||
}], options.unselecting);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
return false;
|
||||
},
|
||||
mouseStop: function(e) {
|
||||
var self = this;
|
||||
|
||||
this.dragged = false;
|
||||
|
||||
var options = this.options;
|
||||
|
||||
$('.ui-unselecting', this.element[0]).each(function() {
|
||||
var selectee = $.data(this, "selectable-item");
|
||||
selectee.$element.removeClass('ui-unselecting');
|
||||
selectee.unselecting = false;
|
||||
selectee.startselected = false;
|
||||
self.element.triggerHandler("selectableunselected", [e, {
|
||||
selectable: self.element[0],
|
||||
unselected: selectee.element,
|
||||
options: options
|
||||
}], options.unselected);
|
||||
});
|
||||
$('.ui-selecting', this.element[0]).each(function() {
|
||||
var selectee = $.data(this, "selectable-item");
|
||||
selectee.$element.removeClass('ui-selecting').addClass('ui-selected');
|
||||
selectee.selecting = false;
|
||||
selectee.selected = true;
|
||||
selectee.startselected = true;
|
||||
self.element.triggerHandler("selectableselected", [e, {
|
||||
selectable: self.element[0],
|
||||
selected: selectee.element,
|
||||
options: options
|
||||
}], options.selected);
|
||||
});
|
||||
this.element.triggerHandler("selectablestop", [e, {
|
||||
selectable: self.element[0],
|
||||
options: this.options
|
||||
}], this.options.stop);
|
||||
|
||||
this.helper.remove();
|
||||
|
||||
return false;
|
||||
}
|
||||
}));
|
||||
|
||||
$.extend($.ui.selectable, {
|
||||
defaults: {
|
||||
distance: 0,
|
||||
delay: 0,
|
||||
cancel: ":input,button",
|
||||
appendTo: 'body',
|
||||
autoRefresh: true,
|
||||
filter: '*',
|
||||
tolerance: 'touch'
|
||||
}
|
||||
});
|
||||
|
||||
})(jQuery);
|
||||
/*
|
||||
* jQuery UI Selectable
|
||||
*
|
||||
* Copyright (c) 2008 Richard D. Worth (rdworth.org)
|
||||
* Dual licensed under the MIT (MIT-LICENSE.txt)
|
||||
* and GPL (GPL-LICENSE.txt) licenses.
|
||||
*
|
||||
* http://docs.jquery.com/UI/Selectables
|
||||
*
|
||||
* Depends:
|
||||
* ui.core.js
|
||||
*
|
||||
* Revision: $Id: ui.selectable.js 5581 2008-05-13 16:58:03Z scott.gonzalez $
|
||||
*/
|
||||
;(function($) {
|
||||
|
||||
$.widget("ui.selectable", $.extend($.ui.mouse, {
|
||||
init: function() {
|
||||
var self = this;
|
||||
|
||||
this.element.addClass("ui-selectable");
|
||||
|
||||
this.dragged = false;
|
||||
|
||||
// cache selectee children based on filter
|
||||
var selectees;
|
||||
this.refresh = function() {
|
||||
selectees = $(self.options.filter, self.element[0]);
|
||||
selectees.each(function() {
|
||||
var $this = $(this);
|
||||
var pos = $this.offset();
|
||||
$.data(this, "selectable-item", {
|
||||
element: this,
|
||||
$element: $this,
|
||||
left: pos.left,
|
||||
top: pos.top,
|
||||
right: pos.left + $this.width(),
|
||||
bottom: pos.top + $this.height(),
|
||||
startselected: false,
|
||||
selected: $this.hasClass('ui-selected'),
|
||||
selecting: $this.hasClass('ui-selecting'),
|
||||
unselecting: $this.hasClass('ui-unselecting')
|
||||
});
|
||||
});
|
||||
};
|
||||
this.refresh();
|
||||
|
||||
this.selectees = selectees.addClass("ui-selectee");
|
||||
|
||||
this.mouseInit();
|
||||
|
||||
this.helper = $(document.createElement('div')).css({border:'1px dotted black'});
|
||||
},
|
||||
toggle: function() {
|
||||
if(this.options.disabled){
|
||||
this.enable();
|
||||
} else {
|
||||
this.disable();
|
||||
}
|
||||
},
|
||||
destroy: function() {
|
||||
this.element
|
||||
.removeClass("ui-selectable ui-selectable-disabled")
|
||||
.removeData("selectable")
|
||||
.unbind(".selectable");
|
||||
this.mouseDestroy();
|
||||
},
|
||||
enable: function() {
|
||||
this.element.removeClass("ui-selectable-disabled");
|
||||
this.options.disabled = false;
|
||||
},
|
||||
disable: function() {
|
||||
this.element.addClass("ui-selectable-disabled");
|
||||
this.options.disabled = true;
|
||||
},
|
||||
mouseStart: function(e) {
|
||||
var self = this;
|
||||
|
||||
this.opos = [e.pageX, e.pageY];
|
||||
|
||||
if (this.options.disabled)
|
||||
return;
|
||||
|
||||
var options = this.options;
|
||||
|
||||
this.selectees = $(options.filter, this.element[0]);
|
||||
|
||||
// selectable START callback
|
||||
this.element.triggerHandler("selectablestart", [e, {
|
||||
"selectable": this.element[0],
|
||||
"options": options
|
||||
}], options.start);
|
||||
|
||||
$('body').append(this.helper);
|
||||
// position helper (lasso)
|
||||
this.helper.css({
|
||||
"z-index": 100,
|
||||
"position": "absolute",
|
||||
"left": e.clientX,
|
||||
"top": e.clientY,
|
||||
"width": 0,
|
||||
"height": 0
|
||||
});
|
||||
|
||||
if (options.autoRefresh) {
|
||||
this.refresh();
|
||||
}
|
||||
|
||||
this.selectees.filter('.ui-selected').each(function() {
|
||||
var selectee = $.data(this, "selectable-item");
|
||||
selectee.startselected = true;
|
||||
if (!e.ctrlKey) {
|
||||
selectee.$element.removeClass('ui-selected');
|
||||
selectee.selected = false;
|
||||
selectee.$element.addClass('ui-unselecting');
|
||||
selectee.unselecting = true;
|
||||
// selectable UNSELECTING callback
|
||||
self.element.triggerHandler("selectableunselecting", [e, {
|
||||
selectable: self.element[0],
|
||||
unselecting: selectee.element,
|
||||
options: options
|
||||
}], options.unselecting);
|
||||
}
|
||||
});
|
||||
|
||||
var isSelectee = false;
|
||||
$(e.target).parents().andSelf().each(function() {
|
||||
if($.data(this, "selectable-item")) isSelectee = true;
|
||||
});
|
||||
return this.options.keyboard ? !isSelectee : true;
|
||||
},
|
||||
mouseDrag: function(e) {
|
||||
var self = this;
|
||||
this.dragged = true;
|
||||
|
||||
if (this.options.disabled)
|
||||
return;
|
||||
|
||||
var options = this.options;
|
||||
|
||||
var x1 = this.opos[0], y1 = this.opos[1], x2 = e.pageX, y2 = e.pageY;
|
||||
if (x1 > x2) { var tmp = x2; x2 = x1; x1 = tmp; }
|
||||
if (y1 > y2) { var tmp = y2; y2 = y1; y1 = tmp; }
|
||||
this.helper.css({left: x1, top: y1, width: x2-x1, height: y2-y1});
|
||||
|
||||
this.selectees.each(function() {
|
||||
var selectee = $.data(this, "selectable-item");
|
||||
//prevent helper from being selected if appendTo: selectable
|
||||
if (!selectee || selectee.element == self.element[0])
|
||||
return;
|
||||
var hit = false;
|
||||
if (options.tolerance == 'touch') {
|
||||
hit = ( !(selectee.left > x2 || selectee.right < x1 || selectee.top > y2 || selectee.bottom < y1) );
|
||||
} else if (options.tolerance == 'fit') {
|
||||
hit = (selectee.left > x1 && selectee.right < x2 && selectee.top > y1 && selectee.bottom < y2);
|
||||
}
|
||||
|
||||
if (hit) {
|
||||
// SELECT
|
||||
if (selectee.selected) {
|
||||
selectee.$element.removeClass('ui-selected');
|
||||
selectee.selected = false;
|
||||
}
|
||||
if (selectee.unselecting) {
|
||||
selectee.$element.removeClass('ui-unselecting');
|
||||
selectee.unselecting = false;
|
||||
}
|
||||
if (!selectee.selecting) {
|
||||
selectee.$element.addClass('ui-selecting');
|
||||
selectee.selecting = true;
|
||||
// selectable SELECTING callback
|
||||
self.element.triggerHandler("selectableselecting", [e, {
|
||||
selectable: self.element[0],
|
||||
selecting: selectee.element,
|
||||
options: options
|
||||
}], options.selecting);
|
||||
}
|
||||
} else {
|
||||
// UNSELECT
|
||||
if (selectee.selecting) {
|
||||
if (e.ctrlKey && selectee.startselected) {
|
||||
selectee.$element.removeClass('ui-selecting');
|
||||
selectee.selecting = false;
|
||||
selectee.$element.addClass('ui-selected');
|
||||
selectee.selected = true;
|
||||
} else {
|
||||
selectee.$element.removeClass('ui-selecting');
|
||||
selectee.selecting = false;
|
||||
if (selectee.startselected) {
|
||||
selectee.$element.addClass('ui-unselecting');
|
||||
selectee.unselecting = true;
|
||||
}
|
||||
// selectable UNSELECTING callback
|
||||
self.element.triggerHandler("selectableunselecting", [e, {
|
||||
selectable: self.element[0],
|
||||
unselecting: selectee.element,
|
||||
options: options
|
||||
}], options.unselecting);
|
||||
}
|
||||
}
|
||||
if (selectee.selected) {
|
||||
if (!e.ctrlKey && !selectee.startselected) {
|
||||
selectee.$element.removeClass('ui-selected');
|
||||
selectee.selected = false;
|
||||
|
||||
selectee.$element.addClass('ui-unselecting');
|
||||
selectee.unselecting = true;
|
||||
// selectable UNSELECTING callback
|
||||
self.element.triggerHandler("selectableunselecting", [e, {
|
||||
selectable: self.element[0],
|
||||
unselecting: selectee.element,
|
||||
options: options
|
||||
}], options.unselecting);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
return false;
|
||||
},
|
||||
mouseStop: function(e) {
|
||||
var self = this;
|
||||
|
||||
this.dragged = false;
|
||||
|
||||
var options = this.options;
|
||||
|
||||
$('.ui-unselecting', this.element[0]).each(function() {
|
||||
var selectee = $.data(this, "selectable-item");
|
||||
selectee.$element.removeClass('ui-unselecting');
|
||||
selectee.unselecting = false;
|
||||
selectee.startselected = false;
|
||||
self.element.triggerHandler("selectableunselected", [e, {
|
||||
selectable: self.element[0],
|
||||
unselected: selectee.element,
|
||||
options: options
|
||||
}], options.unselected);
|
||||
});
|
||||
$('.ui-selecting', this.element[0]).each(function() {
|
||||
var selectee = $.data(this, "selectable-item");
|
||||
selectee.$element.removeClass('ui-selecting').addClass('ui-selected');
|
||||
selectee.selecting = false;
|
||||
selectee.selected = true;
|
||||
selectee.startselected = true;
|
||||
self.element.triggerHandler("selectableselected", [e, {
|
||||
selectable: self.element[0],
|
||||
selected: selectee.element,
|
||||
options: options
|
||||
}], options.selected);
|
||||
});
|
||||
this.element.triggerHandler("selectablestop", [e, {
|
||||
selectable: self.element[0],
|
||||
options: this.options
|
||||
}], this.options.stop);
|
||||
|
||||
this.helper.remove();
|
||||
|
||||
return false;
|
||||
}
|
||||
}));
|
||||
|
||||
$.extend($.ui.selectable, {
|
||||
defaults: {
|
||||
distance: 0,
|
||||
delay: 0,
|
||||
cancel: ":input,button",
|
||||
appendTo: 'body',
|
||||
autoRefresh: true,
|
||||
filter: '*',
|
||||
tolerance: 'touch'
|
||||
}
|
||||
});
|
||||
|
||||
})(jQuery);
|
||||
|
||||
@@ -1,430 +1,430 @@
|
||||
/*
|
||||
* jQuery UI Slider
|
||||
*
|
||||
* Copyright (c) 2008 Paul Bakaus
|
||||
* Dual licensed under the MIT (MIT-LICENSE.txt)
|
||||
* and GPL (GPL-LICENSE.txt) licenses.
|
||||
*
|
||||
* http://docs.jquery.com/UI/Slider
|
||||
*
|
||||
* Depends:
|
||||
* ui.core.js
|
||||
*
|
||||
* Revision: $Id: ui.slider.js 5539 2008-05-09 16:48:33Z paul.bakaus $
|
||||
*/
|
||||
;(function($) {
|
||||
|
||||
$.fn.unwrap = $.fn.unwrap || function(expr) {
|
||||
return this.each(function(){
|
||||
$(this).parents(expr).eq(0).after(this).remove();
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
$.widget("ui.slider", {
|
||||
plugins: {},
|
||||
ui: function(e) {
|
||||
return {
|
||||
instance: this,
|
||||
options: this.options,
|
||||
handle: this.currentHandle,
|
||||
value: this.options.axis != "both" || !this.options.axis ? Math.round(this.value(null,this.options.axis == "vertical" ? "y" : "x")) : {
|
||||
x: Math.round(this.value(null,"x")),
|
||||
y: Math.round(this.value(null,"y"))
|
||||
},
|
||||
range: this.getRange()
|
||||
};
|
||||
},
|
||||
propagate: function(n,e) {
|
||||
$.ui.plugin.call(this, n, [e, this.ui()]);
|
||||
this.element.triggerHandler(n == "slide" ? n : "slide"+n, [e, this.ui()], this.options[n]);
|
||||
},
|
||||
destroy: function() {
|
||||
this.element
|
||||
.removeClass("ui-slider ui-slider-disabled")
|
||||
.removeData("slider")
|
||||
.unbind(".slider");
|
||||
this.handle
|
||||
.unwrap("a")
|
||||
.mouse("destroy");
|
||||
this.generated && this.generated.remove();
|
||||
},
|
||||
enable: function() {
|
||||
this.element.removeClass("ui-slider-disabled");
|
||||
this.disabled = false;
|
||||
},
|
||||
disable: function() {
|
||||
this.element.addClass("ui-slider-disabled");
|
||||
this.disabled = true;
|
||||
},
|
||||
setData: function(key, value) {
|
||||
this.options[key] = value;
|
||||
if (/min|max|steps/.test(key)) {
|
||||
this.initBoundaries();
|
||||
}
|
||||
},
|
||||
|
||||
init: function() {
|
||||
|
||||
var self = this;
|
||||
this.element.addClass("ui-slider");
|
||||
this.initBoundaries();
|
||||
|
||||
// Initialize mouse and key events for interaction
|
||||
this.handle = $(this.options.handle, this.element);
|
||||
if (!this.handle.length) {
|
||||
self.handle = self.generated = $(self.options.handles || [0]).map(function() {
|
||||
var handle = $("<div/>").addClass("ui-slider-handle").appendTo(self.element);
|
||||
if (this.id)
|
||||
handle.attr("id", this.id);
|
||||
return handle[0];
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
var handleclass = function(el) {
|
||||
this.element = $(el);
|
||||
this.element.data("mouse", this);
|
||||
this.options = self.options;
|
||||
|
||||
this.element.bind("mousedown", function() {
|
||||
if(self.currentHandle) this.blur(self.currentHandle);
|
||||
self.focus(this,1);
|
||||
});
|
||||
|
||||
this.mouseInit();
|
||||
};
|
||||
|
||||
$.extend(handleclass.prototype, $.ui.mouse, {
|
||||
mouseStart: function(e) { return self.start.call(self, e, this.element[0]); },
|
||||
mouseStop: function(e) { return self.stop.call(self, e, this.element[0]); },
|
||||
mouseDrag: function(e) { return self.drag.call(self, e, this.element[0]); },
|
||||
trigger: function(e) { this.mouseDown(e); }
|
||||
});
|
||||
|
||||
|
||||
$(this.handle)
|
||||
.each(function() {
|
||||
new handleclass(this);
|
||||
})
|
||||
.wrap('<a href="javascript:void(0)" style="cursor:default;"></a>')
|
||||
.parent()
|
||||
.bind('focus', function(e) { self.focus(this.firstChild); })
|
||||
.bind('blur', function(e) { self.blur(this.firstChild); })
|
||||
.bind('keydown', function(e) { if(!self.options.noKeyboard) self.keydown(e.keyCode, this.firstChild); })
|
||||
;
|
||||
|
||||
// Bind the click to the slider itself
|
||||
this.element.bind('mousedown.slider', function(e) {
|
||||
self.click.apply(self, [e]);
|
||||
self.currentHandle.data("mouse").trigger(e);
|
||||
self.firstValue = self.firstValue + 1; //This is for always triggering the change event
|
||||
});
|
||||
|
||||
// Move the first handle to the startValue
|
||||
$.each(this.options.handles || [], function(index, handle) {
|
||||
self.moveTo(handle.start, index, true);
|
||||
});
|
||||
if (!isNaN(this.options.startValue))
|
||||
this.moveTo(this.options.startValue, 0, true);
|
||||
|
||||
this.previousHandle = $(this.handle[0]); //set the previous handle to the first to allow clicking before selecting the handle
|
||||
if(this.handle.length == 2 && this.options.range) this.createRange();
|
||||
},
|
||||
initBoundaries: function() {
|
||||
|
||||
var element = this.element[0], o = this.options;
|
||||
this.actualSize = { width: this.element.outerWidth() , height: this.element.outerHeight() };
|
||||
|
||||
$.extend(o, {
|
||||
axis: o.axis || (element.offsetWidth < element.offsetHeight ? 'vertical' : 'horizontal'),
|
||||
max: !isNaN(parseInt(o.max,10)) ? { x: parseInt(o.max, 10), y: parseInt(o.max, 10) } : ({ x: o.max && o.max.x || 100, y: o.max && o.max.y || 100 }),
|
||||
min: !isNaN(parseInt(o.min,10)) ? { x: parseInt(o.min, 10), y: parseInt(o.min, 10) } : ({ x: o.min && o.min.x || 0, y: o.min && o.min.y || 0 })
|
||||
});
|
||||
//Prepare the real maxValue
|
||||
o.realMax = {
|
||||
x: o.max.x - o.min.x,
|
||||
y: o.max.y - o.min.y
|
||||
};
|
||||
//Calculate stepping based on steps
|
||||
o.stepping = {
|
||||
x: o.stepping && o.stepping.x || parseInt(o.stepping, 10) || (o.steps ? o.realMax.x/(o.steps.x || parseInt(o.steps, 10) || o.realMax.x) : 0),
|
||||
y: o.stepping && o.stepping.y || parseInt(o.stepping, 10) || (o.steps ? o.realMax.y/(o.steps.y || parseInt(o.steps, 10) || o.realMax.y) : 0)
|
||||
};
|
||||
},
|
||||
|
||||
|
||||
keydown: function(keyCode, handle) {
|
||||
if(/(37|38|39|40)/.test(keyCode)) {
|
||||
this.moveTo({
|
||||
x: /(37|39)/.test(keyCode) ? (keyCode == 37 ? '-' : '+') + '=' + this.oneStep("x") : 0,
|
||||
y: /(38|40)/.test(keyCode) ? (keyCode == 38 ? '-' : '+') + '=' + this.oneStep("y") : 0
|
||||
}, handle);
|
||||
}
|
||||
},
|
||||
focus: function(handle,hard) {
|
||||
this.currentHandle = $(handle).addClass('ui-slider-handle-active');
|
||||
if (hard)
|
||||
this.currentHandle.parent()[0].focus();
|
||||
},
|
||||
blur: function(handle) {
|
||||
$(handle).removeClass('ui-slider-handle-active');
|
||||
if(this.currentHandle && this.currentHandle[0] == handle) { this.previousHandle = this.currentHandle; this.currentHandle = null; };
|
||||
},
|
||||
click: function(e) {
|
||||
// This method is only used if:
|
||||
// - The user didn't click a handle
|
||||
// - The Slider is not disabled
|
||||
// - There is a current, or previous selected handle (otherwise we wouldn't know which one to move)
|
||||
|
||||
var pointer = [e.pageX,e.pageY];
|
||||
|
||||
var clickedHandle = false;
|
||||
this.handle.each(function() {
|
||||
if(this == e.target)
|
||||
clickedHandle = true;
|
||||
});
|
||||
if (clickedHandle || this.disabled || !(this.currentHandle || this.previousHandle))
|
||||
return;
|
||||
|
||||
// If a previous handle was focussed, focus it again
|
||||
if (!this.currentHandle && this.previousHandle)
|
||||
this.focus(this.previousHandle, true);
|
||||
|
||||
// propagate only for distance > 0, otherwise propagation is done my drag
|
||||
this.offset = this.element.offset();
|
||||
|
||||
this.moveTo({
|
||||
y: this.convertValue(e.pageY - this.offset.top - this.currentHandle[0].offsetHeight/2, "y"),
|
||||
x: this.convertValue(e.pageX - this.offset.left - this.currentHandle[0].offsetWidth/2, "x")
|
||||
}, null, !this.options.distance);
|
||||
},
|
||||
|
||||
|
||||
|
||||
createRange: function() {
|
||||
this.rangeElement = $('<div></div>')
|
||||
.addClass('ui-slider-range')
|
||||
.css({ position: 'absolute' })
|
||||
.appendTo(this.element);
|
||||
this.updateRange();
|
||||
},
|
||||
updateRange: function() {
|
||||
var prop = this.options.axis == "vertical" ? "top" : "left";
|
||||
var size = this.options.axis == "vertical" ? "height" : "width";
|
||||
this.rangeElement.css(prop, parseInt($(this.handle[0]).css(prop),10) + this.handleSize(0, this.options.axis == "vertical" ? "y" : "x")/2);
|
||||
this.rangeElement.css(size, parseInt($(this.handle[1]).css(prop),10) - parseInt($(this.handle[0]).css(prop),10));
|
||||
},
|
||||
getRange: function() {
|
||||
return this.rangeElement ? this.convertValue(parseInt(this.rangeElement.css(this.options.axis == "vertical" ? "height" : "width"),10), this.options.axis == "vertical" ? "y" : "x") : null;
|
||||
},
|
||||
|
||||
handleIndex: function() {
|
||||
return this.handle.index(this.currentHandle[0]);
|
||||
},
|
||||
value: function(handle, axis) {
|
||||
if(this.handle.length == 1) this.currentHandle = this.handle;
|
||||
if(!axis) axis = this.options.axis == "vertical" ? "y" : "x";
|
||||
|
||||
var curHandle = $(handle != undefined && handle !== null ? this.handle[handle] || handle : this.currentHandle);
|
||||
|
||||
if(curHandle.data("mouse").sliderValue) {
|
||||
return parseInt(curHandle.data("mouse").sliderValue[axis],10);
|
||||
} else {
|
||||
return parseInt(((parseInt(curHandle.css(axis == "x" ? "left" : "top"),10) / (this.actualSize[axis == "x" ? "width" : "height"] - this.handleSize(handle,axis))) * this.options.realMax[axis]) + this.options.min[axis],10);
|
||||
}
|
||||
|
||||
},
|
||||
convertValue: function(value,axis) {
|
||||
return this.options.min[axis] + (value / (this.actualSize[axis == "x" ? "width" : "height"] - this.handleSize(null,axis))) * this.options.realMax[axis];
|
||||
},
|
||||
|
||||
translateValue: function(value,axis) {
|
||||
return ((value - this.options.min[axis]) / this.options.realMax[axis]) * (this.actualSize[axis == "x" ? "width" : "height"] - this.handleSize(null,axis));
|
||||
},
|
||||
translateRange: function(value,axis) {
|
||||
if (this.rangeElement) {
|
||||
if (this.currentHandle[0] == this.handle[0] && value >= this.translateValue(this.value(1),axis))
|
||||
value = this.translateValue(this.value(1,axis) - this.oneStep(axis), axis);
|
||||
if (this.currentHandle[0] == this.handle[1] && value <= this.translateValue(this.value(0),axis))
|
||||
value = this.translateValue(this.value(0,axis) + this.oneStep(axis), axis);
|
||||
}
|
||||
if (this.options.handles) {
|
||||
var handle = this.options.handles[this.handleIndex()];
|
||||
if (value < this.translateValue(handle.min,axis)) {
|
||||
value = this.translateValue(handle.min,axis);
|
||||
} else if (value > this.translateValue(handle.max,axis)) {
|
||||
value = this.translateValue(handle.max,axis);
|
||||
}
|
||||
}
|
||||
return value;
|
||||
},
|
||||
translateLimits: function(value,axis) {
|
||||
if (value >= this.actualSize[axis == "x" ? "width" : "height"] - this.handleSize(null,axis))
|
||||
value = this.actualSize[axis == "x" ? "width" : "height"] - this.handleSize(null,axis);
|
||||
if (value <= 0)
|
||||
value = 0;
|
||||
return value;
|
||||
},
|
||||
handleSize: function(handle,axis) {
|
||||
return $(handle != undefined && handle !== null ? this.handle[handle] : this.currentHandle)[0]["offset"+(axis == "x" ? "Width" : "Height")];
|
||||
},
|
||||
oneStep: function(axis) {
|
||||
return this.options.stepping[axis] || 1;
|
||||
},
|
||||
|
||||
|
||||
start: function(e, handle) {
|
||||
|
||||
var o = this.options;
|
||||
if(this.disabled) return false;
|
||||
|
||||
// Prepare the outer size
|
||||
this.actualSize = { width: this.element.outerWidth() , height: this.element.outerHeight() };
|
||||
|
||||
// This is a especially ugly fix for strange blur events happening on mousemove events
|
||||
if (!this.currentHandle)
|
||||
this.focus(this.previousHandle, true);
|
||||
|
||||
this.offset = this.element.offset();
|
||||
|
||||
this.handleOffset = this.currentHandle.offset();
|
||||
this.clickOffset = { top: e.pageY - this.handleOffset.top, left: e.pageX - this.handleOffset.left };
|
||||
|
||||
this.firstValue = this.value();
|
||||
|
||||
this.propagate('start', e);
|
||||
return true;
|
||||
|
||||
},
|
||||
stop: function(e) {
|
||||
this.propagate('stop', e);
|
||||
if (this.firstValue != this.value())
|
||||
this.propagate('change', e);
|
||||
// This is a especially ugly fix for strange blur events happening on mousemove events
|
||||
this.focus(this.currentHandle, true);
|
||||
return false;
|
||||
},
|
||||
drag: function(e, handle) {
|
||||
|
||||
var o = this.options;
|
||||
var position = { top: e.pageY - this.offset.top - this.clickOffset.top, left: e.pageX - this.offset.left - this.clickOffset.left};
|
||||
if(!this.currentHandle) this.focus(this.previousHandle, true); //This is a especially ugly fix for strange blur events happening on mousemove events
|
||||
|
||||
position.left = this.translateLimits(position.left, "x");
|
||||
position.top = this.translateLimits(position.top, "y");
|
||||
|
||||
if (o.stepping.x) {
|
||||
var value = this.convertValue(position.left, "x");
|
||||
value = Math.round(value / o.stepping.x) * o.stepping.x;
|
||||
position.left = this.translateValue(value, "x");
|
||||
}
|
||||
if (o.stepping.y) {
|
||||
var value = this.convertValue(position.top, "y");
|
||||
value = Math.round(value / o.stepping.y) * o.stepping.y;
|
||||
position.top = this.translateValue(value, "y");
|
||||
}
|
||||
|
||||
position.left = this.translateRange(position.left, "x");
|
||||
position.top = this.translateRange(position.top, "y");
|
||||
|
||||
if(o.axis != "vertical") this.currentHandle.css({ left: position.left });
|
||||
if(o.axis != "horizontal") this.currentHandle.css({ top: position.top });
|
||||
|
||||
//Store the slider's value
|
||||
this.currentHandle.data("mouse").sliderValue = {
|
||||
x: Math.round(this.convertValue(position.left, "x")) || 0,
|
||||
y: Math.round(this.convertValue(position.top, "y")) || 0
|
||||
};
|
||||
|
||||
if (this.rangeElement)
|
||||
this.updateRange();
|
||||
this.propagate('slide', e);
|
||||
return false;
|
||||
},
|
||||
|
||||
moveTo: function(value, handle, noPropagation) {
|
||||
|
||||
var o = this.options;
|
||||
|
||||
// Prepare the outer size
|
||||
this.actualSize = { width: this.element.outerWidth() , height: this.element.outerHeight() };
|
||||
|
||||
//If no handle has been passed, no current handle is available and we have multiple handles, return false
|
||||
if (handle == undefined && !this.currentHandle && this.handle.length != 1)
|
||||
return false;
|
||||
|
||||
//If only one handle is available, use it
|
||||
if (handle == undefined && !this.currentHandle)
|
||||
handle = 0;
|
||||
|
||||
if (handle != undefined)
|
||||
this.currentHandle = this.previousHandle = $(this.handle[handle] || handle);
|
||||
|
||||
|
||||
if(value.x !== undefined && value.y !== undefined) {
|
||||
var x = value.x, y = value.y;
|
||||
} else {
|
||||
var x = value, y = value;
|
||||
}
|
||||
|
||||
if(x !== undefined && x.constructor != Number) {
|
||||
var me = /^\-\=/.test(x), pe = /^\+\=/.test(x);
|
||||
if(me || pe) {
|
||||
x = this.value(null, "x") + parseInt(x.replace(me ? '=' : '+=', ''), 10);
|
||||
} else {
|
||||
x = isNaN(parseInt(x, 10)) ? undefined : parseInt(x, 10);
|
||||
}
|
||||
}
|
||||
|
||||
if(y !== undefined && y.constructor != Number) {
|
||||
var me = /^\-\=/.test(y), pe = /^\+\=/.test(y);
|
||||
if(me || pe) {
|
||||
y = this.value(null, "y") + parseInt(y.replace(me ? '=' : '+=', ''), 10);
|
||||
} else {
|
||||
y = isNaN(parseInt(y, 10)) ? undefined : parseInt(y, 10);
|
||||
}
|
||||
}
|
||||
|
||||
if(o.axis != "vertical" && x !== undefined) {
|
||||
if(o.stepping.x) x = Math.round(x / o.stepping.x) * o.stepping.x;
|
||||
x = this.translateValue(x, "x");
|
||||
x = this.translateLimits(x, "x");
|
||||
x = this.translateRange(x, "x");
|
||||
this.currentHandle.css({ left: x });
|
||||
}
|
||||
|
||||
if(o.axis != "horizontal" && y !== undefined) {
|
||||
if(o.stepping.y) y = Math.round(y / o.stepping.y) * o.stepping.y;
|
||||
y = this.translateValue(y, "y");
|
||||
y = this.translateLimits(y, "y");
|
||||
y = this.translateRange(y, "y");
|
||||
this.currentHandle.css({ top: y });
|
||||
}
|
||||
|
||||
if (this.rangeElement)
|
||||
this.updateRange();
|
||||
|
||||
//Store the slider's value
|
||||
this.currentHandle.data("mouse").sliderValue = {
|
||||
x: Math.round(this.convertValue(x, "x")) || 0,
|
||||
y: Math.round(this.convertValue(y, "y")) || 0
|
||||
};
|
||||
|
||||
if (!noPropagation) {
|
||||
this.propagate('start', null);
|
||||
this.propagate('stop', null);
|
||||
this.propagate('change', null);
|
||||
this.propagate("slide", null);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
$.ui.slider.getter = "value";
|
||||
|
||||
$.ui.slider.defaults = {
|
||||
handle: ".ui-slider-handle",
|
||||
distance: 1
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
/*
|
||||
* jQuery UI Slider
|
||||
*
|
||||
* Copyright (c) 2008 Paul Bakaus
|
||||
* Dual licensed under the MIT (MIT-LICENSE.txt)
|
||||
* and GPL (GPL-LICENSE.txt) licenses.
|
||||
*
|
||||
* http://docs.jquery.com/UI/Slider
|
||||
*
|
||||
* Depends:
|
||||
* ui.core.js
|
||||
*
|
||||
* Revision: $Id: ui.slider.js 5539 2008-05-09 16:48:33Z paul.bakaus $
|
||||
*/
|
||||
;(function($) {
|
||||
|
||||
$.fn.unwrap = $.fn.unwrap || function(expr) {
|
||||
return this.each(function(){
|
||||
$(this).parents(expr).eq(0).after(this).remove();
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
$.widget("ui.slider", {
|
||||
plugins: {},
|
||||
ui: function(e) {
|
||||
return {
|
||||
instance: this,
|
||||
options: this.options,
|
||||
handle: this.currentHandle,
|
||||
value: this.options.axis != "both" || !this.options.axis ? Math.round(this.value(null,this.options.axis == "vertical" ? "y" : "x")) : {
|
||||
x: Math.round(this.value(null,"x")),
|
||||
y: Math.round(this.value(null,"y"))
|
||||
},
|
||||
range: this.getRange()
|
||||
};
|
||||
},
|
||||
propagate: function(n,e) {
|
||||
$.ui.plugin.call(this, n, [e, this.ui()]);
|
||||
this.element.triggerHandler(n == "slide" ? n : "slide"+n, [e, this.ui()], this.options[n]);
|
||||
},
|
||||
destroy: function() {
|
||||
this.element
|
||||
.removeClass("ui-slider ui-slider-disabled")
|
||||
.removeData("slider")
|
||||
.unbind(".slider");
|
||||
this.handle
|
||||
.unwrap("a")
|
||||
.mouse("destroy");
|
||||
this.generated && this.generated.remove();
|
||||
},
|
||||
enable: function() {
|
||||
this.element.removeClass("ui-slider-disabled");
|
||||
this.disabled = false;
|
||||
},
|
||||
disable: function() {
|
||||
this.element.addClass("ui-slider-disabled");
|
||||
this.disabled = true;
|
||||
},
|
||||
setData: function(key, value) {
|
||||
this.options[key] = value;
|
||||
if (/min|max|steps/.test(key)) {
|
||||
this.initBoundaries();
|
||||
}
|
||||
},
|
||||
|
||||
init: function() {
|
||||
|
||||
var self = this;
|
||||
this.element.addClass("ui-slider");
|
||||
this.initBoundaries();
|
||||
|
||||
// Initialize mouse and key events for interaction
|
||||
this.handle = $(this.options.handle, this.element);
|
||||
if (!this.handle.length) {
|
||||
self.handle = self.generated = $(self.options.handles || [0]).map(function() {
|
||||
var handle = $("<div/>").addClass("ui-slider-handle").appendTo(self.element);
|
||||
if (this.id)
|
||||
handle.attr("id", this.id);
|
||||
return handle[0];
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
var handleclass = function(el) {
|
||||
this.element = $(el);
|
||||
this.element.data("mouse", this);
|
||||
this.options = self.options;
|
||||
|
||||
this.element.bind("mousedown", function() {
|
||||
if(self.currentHandle) this.blur(self.currentHandle);
|
||||
self.focus(this,1);
|
||||
});
|
||||
|
||||
this.mouseInit();
|
||||
};
|
||||
|
||||
$.extend(handleclass.prototype, $.ui.mouse, {
|
||||
mouseStart: function(e) { return self.start.call(self, e, this.element[0]); },
|
||||
mouseStop: function(e) { return self.stop.call(self, e, this.element[0]); },
|
||||
mouseDrag: function(e) { return self.drag.call(self, e, this.element[0]); },
|
||||
trigger: function(e) { this.mouseDown(e); }
|
||||
});
|
||||
|
||||
|
||||
$(this.handle)
|
||||
.each(function() {
|
||||
new handleclass(this);
|
||||
})
|
||||
.wrap('<a href="javascript:void(0)" style="cursor:default;"></a>')
|
||||
.parent()
|
||||
.bind('focus', function(e) { self.focus(this.firstChild); })
|
||||
.bind('blur', function(e) { self.blur(this.firstChild); })
|
||||
.bind('keydown', function(e) { if(!self.options.noKeyboard) self.keydown(e.keyCode, this.firstChild); })
|
||||
;
|
||||
|
||||
// Bind the click to the slider itself
|
||||
this.element.bind('mousedown.slider', function(e) {
|
||||
self.click.apply(self, [e]);
|
||||
self.currentHandle.data("mouse").trigger(e);
|
||||
self.firstValue = self.firstValue + 1; //This is for always triggering the change event
|
||||
});
|
||||
|
||||
// Move the first handle to the startValue
|
||||
$.each(this.options.handles || [], function(index, handle) {
|
||||
self.moveTo(handle.start, index, true);
|
||||
});
|
||||
if (!isNaN(this.options.startValue))
|
||||
this.moveTo(this.options.startValue, 0, true);
|
||||
|
||||
this.previousHandle = $(this.handle[0]); //set the previous handle to the first to allow clicking before selecting the handle
|
||||
if(this.handle.length == 2 && this.options.range) this.createRange();
|
||||
},
|
||||
initBoundaries: function() {
|
||||
|
||||
var element = this.element[0], o = this.options;
|
||||
this.actualSize = { width: this.element.outerWidth() , height: this.element.outerHeight() };
|
||||
|
||||
$.extend(o, {
|
||||
axis: o.axis || (element.offsetWidth < element.offsetHeight ? 'vertical' : 'horizontal'),
|
||||
max: !isNaN(parseInt(o.max,10)) ? { x: parseInt(o.max, 10), y: parseInt(o.max, 10) } : ({ x: o.max && o.max.x || 100, y: o.max && o.max.y || 100 }),
|
||||
min: !isNaN(parseInt(o.min,10)) ? { x: parseInt(o.min, 10), y: parseInt(o.min, 10) } : ({ x: o.min && o.min.x || 0, y: o.min && o.min.y || 0 })
|
||||
});
|
||||
//Prepare the real maxValue
|
||||
o.realMax = {
|
||||
x: o.max.x - o.min.x,
|
||||
y: o.max.y - o.min.y
|
||||
};
|
||||
//Calculate stepping based on steps
|
||||
o.stepping = {
|
||||
x: o.stepping && o.stepping.x || parseInt(o.stepping, 10) || (o.steps ? o.realMax.x/(o.steps.x || parseInt(o.steps, 10) || o.realMax.x) : 0),
|
||||
y: o.stepping && o.stepping.y || parseInt(o.stepping, 10) || (o.steps ? o.realMax.y/(o.steps.y || parseInt(o.steps, 10) || o.realMax.y) : 0)
|
||||
};
|
||||
},
|
||||
|
||||
|
||||
keydown: function(keyCode, handle) {
|
||||
if(/(37|38|39|40)/.test(keyCode)) {
|
||||
this.moveTo({
|
||||
x: /(37|39)/.test(keyCode) ? (keyCode == 37 ? '-' : '+') + '=' + this.oneStep("x") : 0,
|
||||
y: /(38|40)/.test(keyCode) ? (keyCode == 38 ? '-' : '+') + '=' + this.oneStep("y") : 0
|
||||
}, handle);
|
||||
}
|
||||
},
|
||||
focus: function(handle,hard) {
|
||||
this.currentHandle = $(handle).addClass('ui-slider-handle-active');
|
||||
if (hard)
|
||||
this.currentHandle.parent()[0].focus();
|
||||
},
|
||||
blur: function(handle) {
|
||||
$(handle).removeClass('ui-slider-handle-active');
|
||||
if(this.currentHandle && this.currentHandle[0] == handle) { this.previousHandle = this.currentHandle; this.currentHandle = null; };
|
||||
},
|
||||
click: function(e) {
|
||||
// This method is only used if:
|
||||
// - The user didn't click a handle
|
||||
// - The Slider is not disabled
|
||||
// - There is a current, or previous selected handle (otherwise we wouldn't know which one to move)
|
||||
|
||||
var pointer = [e.pageX,e.pageY];
|
||||
|
||||
var clickedHandle = false;
|
||||
this.handle.each(function() {
|
||||
if(this == e.target)
|
||||
clickedHandle = true;
|
||||
});
|
||||
if (clickedHandle || this.disabled || !(this.currentHandle || this.previousHandle))
|
||||
return;
|
||||
|
||||
// If a previous handle was focussed, focus it again
|
||||
if (!this.currentHandle && this.previousHandle)
|
||||
this.focus(this.previousHandle, true);
|
||||
|
||||
// propagate only for distance > 0, otherwise propagation is done my drag
|
||||
this.offset = this.element.offset();
|
||||
|
||||
this.moveTo({
|
||||
y: this.convertValue(e.pageY - this.offset.top - this.currentHandle[0].offsetHeight/2, "y"),
|
||||
x: this.convertValue(e.pageX - this.offset.left - this.currentHandle[0].offsetWidth/2, "x")
|
||||
}, null, !this.options.distance);
|
||||
},
|
||||
|
||||
|
||||
|
||||
createRange: function() {
|
||||
this.rangeElement = $('<div></div>')
|
||||
.addClass('ui-slider-range')
|
||||
.css({ position: 'absolute' })
|
||||
.appendTo(this.element);
|
||||
this.updateRange();
|
||||
},
|
||||
updateRange: function() {
|
||||
var prop = this.options.axis == "vertical" ? "top" : "left";
|
||||
var size = this.options.axis == "vertical" ? "height" : "width";
|
||||
this.rangeElement.css(prop, parseInt($(this.handle[0]).css(prop),10) + this.handleSize(0, this.options.axis == "vertical" ? "y" : "x")/2);
|
||||
this.rangeElement.css(size, parseInt($(this.handle[1]).css(prop),10) - parseInt($(this.handle[0]).css(prop),10));
|
||||
},
|
||||
getRange: function() {
|
||||
return this.rangeElement ? this.convertValue(parseInt(this.rangeElement.css(this.options.axis == "vertical" ? "height" : "width"),10), this.options.axis == "vertical" ? "y" : "x") : null;
|
||||
},
|
||||
|
||||
handleIndex: function() {
|
||||
return this.handle.index(this.currentHandle[0]);
|
||||
},
|
||||
value: function(handle, axis) {
|
||||
if(this.handle.length == 1) this.currentHandle = this.handle;
|
||||
if(!axis) axis = this.options.axis == "vertical" ? "y" : "x";
|
||||
|
||||
var curHandle = $(handle != undefined && handle !== null ? this.handle[handle] || handle : this.currentHandle);
|
||||
|
||||
if(curHandle.data("mouse").sliderValue) {
|
||||
return parseInt(curHandle.data("mouse").sliderValue[axis],10);
|
||||
} else {
|
||||
return parseInt(((parseInt(curHandle.css(axis == "x" ? "left" : "top"),10) / (this.actualSize[axis == "x" ? "width" : "height"] - this.handleSize(handle,axis))) * this.options.realMax[axis]) + this.options.min[axis],10);
|
||||
}
|
||||
|
||||
},
|
||||
convertValue: function(value,axis) {
|
||||
return this.options.min[axis] + (value / (this.actualSize[axis == "x" ? "width" : "height"] - this.handleSize(null,axis))) * this.options.realMax[axis];
|
||||
},
|
||||
|
||||
translateValue: function(value,axis) {
|
||||
return ((value - this.options.min[axis]) / this.options.realMax[axis]) * (this.actualSize[axis == "x" ? "width" : "height"] - this.handleSize(null,axis));
|
||||
},
|
||||
translateRange: function(value,axis) {
|
||||
if (this.rangeElement) {
|
||||
if (this.currentHandle[0] == this.handle[0] && value >= this.translateValue(this.value(1),axis))
|
||||
value = this.translateValue(this.value(1,axis) - this.oneStep(axis), axis);
|
||||
if (this.currentHandle[0] == this.handle[1] && value <= this.translateValue(this.value(0),axis))
|
||||
value = this.translateValue(this.value(0,axis) + this.oneStep(axis), axis);
|
||||
}
|
||||
if (this.options.handles) {
|
||||
var handle = this.options.handles[this.handleIndex()];
|
||||
if (value < this.translateValue(handle.min,axis)) {
|
||||
value = this.translateValue(handle.min,axis);
|
||||
} else if (value > this.translateValue(handle.max,axis)) {
|
||||
value = this.translateValue(handle.max,axis);
|
||||
}
|
||||
}
|
||||
return value;
|
||||
},
|
||||
translateLimits: function(value,axis) {
|
||||
if (value >= this.actualSize[axis == "x" ? "width" : "height"] - this.handleSize(null,axis))
|
||||
value = this.actualSize[axis == "x" ? "width" : "height"] - this.handleSize(null,axis);
|
||||
if (value <= 0)
|
||||
value = 0;
|
||||
return value;
|
||||
},
|
||||
handleSize: function(handle,axis) {
|
||||
return $(handle != undefined && handle !== null ? this.handle[handle] : this.currentHandle)[0]["offset"+(axis == "x" ? "Width" : "Height")];
|
||||
},
|
||||
oneStep: function(axis) {
|
||||
return this.options.stepping[axis] || 1;
|
||||
},
|
||||
|
||||
|
||||
start: function(e, handle) {
|
||||
|
||||
var o = this.options;
|
||||
if(this.disabled) return false;
|
||||
|
||||
// Prepare the outer size
|
||||
this.actualSize = { width: this.element.outerWidth() , height: this.element.outerHeight() };
|
||||
|
||||
// This is a especially ugly fix for strange blur events happening on mousemove events
|
||||
if (!this.currentHandle)
|
||||
this.focus(this.previousHandle, true);
|
||||
|
||||
this.offset = this.element.offset();
|
||||
|
||||
this.handleOffset = this.currentHandle.offset();
|
||||
this.clickOffset = { top: e.pageY - this.handleOffset.top, left: e.pageX - this.handleOffset.left };
|
||||
|
||||
this.firstValue = this.value();
|
||||
|
||||
this.propagate('start', e);
|
||||
return true;
|
||||
|
||||
},
|
||||
stop: function(e) {
|
||||
this.propagate('stop', e);
|
||||
if (this.firstValue != this.value())
|
||||
this.propagate('change', e);
|
||||
// This is a especially ugly fix for strange blur events happening on mousemove events
|
||||
this.focus(this.currentHandle, true);
|
||||
return false;
|
||||
},
|
||||
drag: function(e, handle) {
|
||||
|
||||
var o = this.options;
|
||||
var position = { top: e.pageY - this.offset.top - this.clickOffset.top, left: e.pageX - this.offset.left - this.clickOffset.left};
|
||||
if(!this.currentHandle) this.focus(this.previousHandle, true); //This is a especially ugly fix for strange blur events happening on mousemove events
|
||||
|
||||
position.left = this.translateLimits(position.left, "x");
|
||||
position.top = this.translateLimits(position.top, "y");
|
||||
|
||||
if (o.stepping.x) {
|
||||
var value = this.convertValue(position.left, "x");
|
||||
value = Math.round(value / o.stepping.x) * o.stepping.x;
|
||||
position.left = this.translateValue(value, "x");
|
||||
}
|
||||
if (o.stepping.y) {
|
||||
var value = this.convertValue(position.top, "y");
|
||||
value = Math.round(value / o.stepping.y) * o.stepping.y;
|
||||
position.top = this.translateValue(value, "y");
|
||||
}
|
||||
|
||||
position.left = this.translateRange(position.left, "x");
|
||||
position.top = this.translateRange(position.top, "y");
|
||||
|
||||
if(o.axis != "vertical") this.currentHandle.css({ left: position.left });
|
||||
if(o.axis != "horizontal") this.currentHandle.css({ top: position.top });
|
||||
|
||||
//Store the slider's value
|
||||
this.currentHandle.data("mouse").sliderValue = {
|
||||
x: Math.round(this.convertValue(position.left, "x")) || 0,
|
||||
y: Math.round(this.convertValue(position.top, "y")) || 0
|
||||
};
|
||||
|
||||
if (this.rangeElement)
|
||||
this.updateRange();
|
||||
this.propagate('slide', e);
|
||||
return false;
|
||||
},
|
||||
|
||||
moveTo: function(value, handle, noPropagation) {
|
||||
|
||||
var o = this.options;
|
||||
|
||||
// Prepare the outer size
|
||||
this.actualSize = { width: this.element.outerWidth() , height: this.element.outerHeight() };
|
||||
|
||||
//If no handle has been passed, no current handle is available and we have multiple handles, return false
|
||||
if (handle == undefined && !this.currentHandle && this.handle.length != 1)
|
||||
return false;
|
||||
|
||||
//If only one handle is available, use it
|
||||
if (handle == undefined && !this.currentHandle)
|
||||
handle = 0;
|
||||
|
||||
if (handle != undefined)
|
||||
this.currentHandle = this.previousHandle = $(this.handle[handle] || handle);
|
||||
|
||||
|
||||
if(value.x !== undefined && value.y !== undefined) {
|
||||
var x = value.x, y = value.y;
|
||||
} else {
|
||||
var x = value, y = value;
|
||||
}
|
||||
|
||||
if(x !== undefined && x.constructor != Number) {
|
||||
var me = /^\-\=/.test(x), pe = /^\+\=/.test(x);
|
||||
if(me || pe) {
|
||||
x = this.value(null, "x") + parseInt(x.replace(me ? '=' : '+=', ''), 10);
|
||||
} else {
|
||||
x = isNaN(parseInt(x, 10)) ? undefined : parseInt(x, 10);
|
||||
}
|
||||
}
|
||||
|
||||
if(y !== undefined && y.constructor != Number) {
|
||||
var me = /^\-\=/.test(y), pe = /^\+\=/.test(y);
|
||||
if(me || pe) {
|
||||
y = this.value(null, "y") + parseInt(y.replace(me ? '=' : '+=', ''), 10);
|
||||
} else {
|
||||
y = isNaN(parseInt(y, 10)) ? undefined : parseInt(y, 10);
|
||||
}
|
||||
}
|
||||
|
||||
if(o.axis != "vertical" && x !== undefined) {
|
||||
if(o.stepping.x) x = Math.round(x / o.stepping.x) * o.stepping.x;
|
||||
x = this.translateValue(x, "x");
|
||||
x = this.translateLimits(x, "x");
|
||||
x = this.translateRange(x, "x");
|
||||
this.currentHandle.css({ left: x });
|
||||
}
|
||||
|
||||
if(o.axis != "horizontal" && y !== undefined) {
|
||||
if(o.stepping.y) y = Math.round(y / o.stepping.y) * o.stepping.y;
|
||||
y = this.translateValue(y, "y");
|
||||
y = this.translateLimits(y, "y");
|
||||
y = this.translateRange(y, "y");
|
||||
this.currentHandle.css({ top: y });
|
||||
}
|
||||
|
||||
if (this.rangeElement)
|
||||
this.updateRange();
|
||||
|
||||
//Store the slider's value
|
||||
this.currentHandle.data("mouse").sliderValue = {
|
||||
x: Math.round(this.convertValue(x, "x")) || 0,
|
||||
y: Math.round(this.convertValue(y, "y")) || 0
|
||||
};
|
||||
|
||||
if (!noPropagation) {
|
||||
this.propagate('start', null);
|
||||
this.propagate('stop', null);
|
||||
this.propagate('change', null);
|
||||
this.propagate("slide", null);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
$.ui.slider.getter = "value";
|
||||
|
||||
$.ui.slider.defaults = {
|
||||
handle: ".ui-slider-handle",
|
||||
distance: 1
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
1190
ui/source/ui.tabs.js
1190
ui/source/ui.tabs.js
File diff suppressed because it is too large
Load Diff
@@ -1,170 +1,170 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>jQuery UI Accordion Test Suite</title>
|
||||
|
||||
<link rel="stylesheet" href="../../qunit/testsuite.css" type="text/css" media="screen">
|
||||
<script type="text/javascript" src="../../jquery/jquery-1.2.6.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../source/ui.core.js"></script>
|
||||
<script type="text/javascript" src="../source/ui.accordion.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../../qunit/testrunner.js"></script>
|
||||
|
||||
<script type="text/javascript" src="accordion.js"></script>
|
||||
<style type="text/css">
|
||||
.xerror, .error { display: none }
|
||||
</style>
|
||||
|
||||
</head>
|
||||
<body class="flora">
|
||||
<h1>jQuery UI Accordion Test Suite</h1>
|
||||
<h2 id="banner"></h2>
|
||||
<h2 id="userAgent"></h2>
|
||||
|
||||
<ol id="tests"></ol>
|
||||
|
||||
<div id="main" style="position:absolute;top:-2000000px;">
|
||||
|
||||
<fieldset>
|
||||
<legend>Standard, container is a div, header is h3 and content p</legend>
|
||||
|
||||
<div id="list1">
|
||||
<a>There is one obvious advantage:</a>
|
||||
<div>
|
||||
<p>
|
||||
You've seen it coming!<br/>
|
||||
Buy now and get nothing for free!<br/>
|
||||
Well, at least no free beer. Perhaps a bear, if you can afford it.
|
||||
</p>
|
||||
</div>
|
||||
<a>Now that you've got...</a>
|
||||
<div>
|
||||
<p>
|
||||
your bear, you have to admit it!<br/>
|
||||
No, we aren't selling bears.
|
||||
</p>
|
||||
<p>
|
||||
We could talk about renting one.
|
||||
</p>
|
||||
</div>
|
||||
<a>Rent one bear, ...</a>
|
||||
<div>
|
||||
<p>
|
||||
get two for three beer.
|
||||
</p>
|
||||
<p>
|
||||
And now, for something completely different.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<legend>Navigation - Unordered List with anchors and nested lists.</legend>
|
||||
<p>The first item is cloned to allow the user to select it. The
|
||||
active element is choosen based on location.hash: Open Drums and click
|
||||
the first item ('Drums'), then reload the page.</p>
|
||||
|
||||
<ul id="navigation">
|
||||
<li>
|
||||
<a class="head" href="?p=1.1.1">Guitar</a>
|
||||
<ul>
|
||||
<li><a href="?p=1.1.1.1">Electric</a></li>
|
||||
<li><a href="?p=1.1.1.2">Acoustic</a></li>
|
||||
<li><a href="?p=1.1.1.3">Amps</a></li>
|
||||
<li><a href="?p=1.1.1.4">Effects</a></li>
|
||||
<li><a href="?p=1.1.1.5">Accessories</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a class="head" href="?p=1.1.2">Bass</a>
|
||||
<ul>
|
||||
<li><a href="?p=1.1.2.1">Electric</a></li>
|
||||
<li><a href="?p=1.1.2.2">Acoustic</a></li>
|
||||
<li><a href="?p=1.1.2.3">Amps</a></li>
|
||||
<li><a href="?p=1.1.2.4">Effects</a></li>
|
||||
<li><a href="?p=1.1.2.5">Accessories</a></li>
|
||||
<li><a href="?p=1.1.2.5">Accessories</a></li>
|
||||
<li><a href="?p=1.1.2.5">Accessories</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a class="head" href="?p=1.1.3">Drums</a>
|
||||
<ul>
|
||||
<li><a href="?p=1.1.3.2">Acoustic Drums</a></li>
|
||||
<li><a href="?p=1.1.3.3">Electronic Drums</a></li>
|
||||
<li><a href="?p=1.1.3.6">Accessories</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<legend>With options, container is a definition list, header dt, content dd</legend>
|
||||
|
||||
<dl id="list2">
|
||||
<dt class="red">Red</dt>
|
||||
<dd>
|
||||
Fancy stuff about red thingies.
|
||||
</dd>
|
||||
<dt class="green selected">Green</dt>
|
||||
<dd>
|
||||
Green! Green! Green!
|
||||
</dd>
|
||||
<dt class="blue">Blue</dt>
|
||||
<dd>
|
||||
Cool kids are blue.
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<legend>Divitus structure, div container, div header (class title), div
|
||||
content, no active on startup and can be completely closed</legend>
|
||||
|
||||
<div id="list3">
|
||||
<div>
|
||||
<div class="title">Tennis</div>
|
||||
<div>
|
||||
One ball, two players. Lots of fun.
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="title">Soccer</div>
|
||||
<div>
|
||||
One ball, 22 players. Lots of fun.
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="title">Baseball</div>
|
||||
<div>
|
||||
Well, one ball, some guys running around, some guys hitting others with a stick.<br/>
|
||||
Sounds like fun, doesn't it?
|
||||
</div>
|
||||
<div>
|
||||
Well, apart from the running part.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</fieldset>
|
||||
|
||||
<div id="switch">
|
||||
<select>
|
||||
<option>Switch to...</option>
|
||||
<option value="1">1</option>
|
||||
<option value="2">2</option>
|
||||
<option value="3">3</option>
|
||||
</select>
|
||||
<button id="close">Close all</button>
|
||||
Activate via selector, eg. ':first' or 'a:first': <input id="switch2" />
|
||||
</div>
|
||||
|
||||
<div id="log"><div><strong>Log of the 2nd accordion</strong></div></div>
|
||||
</div>
|
||||
</body>
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>jQuery UI Accordion Test Suite</title>
|
||||
|
||||
<link rel="stylesheet" href="../../qunit/testsuite.css" type="text/css" media="screen">
|
||||
<script type="text/javascript" src="../../jquery/jquery-1.2.6.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../source/ui.core.js"></script>
|
||||
<script type="text/javascript" src="../source/ui.accordion.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../../qunit/testrunner.js"></script>
|
||||
|
||||
<script type="text/javascript" src="accordion.js"></script>
|
||||
<style type="text/css">
|
||||
.xerror, .error { display: none }
|
||||
</style>
|
||||
|
||||
</head>
|
||||
<body class="flora">
|
||||
<h1>jQuery UI Accordion Test Suite</h1>
|
||||
<h2 id="banner"></h2>
|
||||
<h2 id="userAgent"></h2>
|
||||
|
||||
<ol id="tests"></ol>
|
||||
|
||||
<div id="main" style="position:absolute;top:-2000000px;">
|
||||
|
||||
<fieldset>
|
||||
<legend>Standard, container is a div, header is h3 and content p</legend>
|
||||
|
||||
<div id="list1">
|
||||
<a>There is one obvious advantage:</a>
|
||||
<div>
|
||||
<p>
|
||||
You've seen it coming!<br/>
|
||||
Buy now and get nothing for free!<br/>
|
||||
Well, at least no free beer. Perhaps a bear, if you can afford it.
|
||||
</p>
|
||||
</div>
|
||||
<a>Now that you've got...</a>
|
||||
<div>
|
||||
<p>
|
||||
your bear, you have to admit it!<br/>
|
||||
No, we aren't selling bears.
|
||||
</p>
|
||||
<p>
|
||||
We could talk about renting one.
|
||||
</p>
|
||||
</div>
|
||||
<a>Rent one bear, ...</a>
|
||||
<div>
|
||||
<p>
|
||||
get two for three beer.
|
||||
</p>
|
||||
<p>
|
||||
And now, for something completely different.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<legend>Navigation - Unordered List with anchors and nested lists.</legend>
|
||||
<p>The first item is cloned to allow the user to select it. The
|
||||
active element is choosen based on location.hash: Open Drums and click
|
||||
the first item ('Drums'), then reload the page.</p>
|
||||
|
||||
<ul id="navigation">
|
||||
<li>
|
||||
<a class="head" href="?p=1.1.1">Guitar</a>
|
||||
<ul>
|
||||
<li><a href="?p=1.1.1.1">Electric</a></li>
|
||||
<li><a href="?p=1.1.1.2">Acoustic</a></li>
|
||||
<li><a href="?p=1.1.1.3">Amps</a></li>
|
||||
<li><a href="?p=1.1.1.4">Effects</a></li>
|
||||
<li><a href="?p=1.1.1.5">Accessories</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a class="head" href="?p=1.1.2">Bass</a>
|
||||
<ul>
|
||||
<li><a href="?p=1.1.2.1">Electric</a></li>
|
||||
<li><a href="?p=1.1.2.2">Acoustic</a></li>
|
||||
<li><a href="?p=1.1.2.3">Amps</a></li>
|
||||
<li><a href="?p=1.1.2.4">Effects</a></li>
|
||||
<li><a href="?p=1.1.2.5">Accessories</a></li>
|
||||
<li><a href="?p=1.1.2.5">Accessories</a></li>
|
||||
<li><a href="?p=1.1.2.5">Accessories</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a class="head" href="?p=1.1.3">Drums</a>
|
||||
<ul>
|
||||
<li><a href="?p=1.1.3.2">Acoustic Drums</a></li>
|
||||
<li><a href="?p=1.1.3.3">Electronic Drums</a></li>
|
||||
<li><a href="?p=1.1.3.6">Accessories</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<legend>With options, container is a definition list, header dt, content dd</legend>
|
||||
|
||||
<dl id="list2">
|
||||
<dt class="red">Red</dt>
|
||||
<dd>
|
||||
Fancy stuff about red thingies.
|
||||
</dd>
|
||||
<dt class="green selected">Green</dt>
|
||||
<dd>
|
||||
Green! Green! Green!
|
||||
</dd>
|
||||
<dt class="blue">Blue</dt>
|
||||
<dd>
|
||||
Cool kids are blue.
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<legend>Divitus structure, div container, div header (class title), div
|
||||
content, no active on startup and can be completely closed</legend>
|
||||
|
||||
<div id="list3">
|
||||
<div>
|
||||
<div class="title">Tennis</div>
|
||||
<div>
|
||||
One ball, two players. Lots of fun.
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="title">Soccer</div>
|
||||
<div>
|
||||
One ball, 22 players. Lots of fun.
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="title">Baseball</div>
|
||||
<div>
|
||||
Well, one ball, some guys running around, some guys hitting others with a stick.<br/>
|
||||
Sounds like fun, doesn't it?
|
||||
</div>
|
||||
<div>
|
||||
Well, apart from the running part.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</fieldset>
|
||||
|
||||
<div id="switch">
|
||||
<select>
|
||||
<option>Switch to...</option>
|
||||
<option value="1">1</option>
|
||||
<option value="2">2</option>
|
||||
<option value="3">3</option>
|
||||
</select>
|
||||
<button id="close">Close all</button>
|
||||
Activate via selector, eg. ':first' or 'a:first': <input id="switch2" />
|
||||
</div>
|
||||
|
||||
<div id="log"><div><strong>Log of the 2nd accordion</strong></div></div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,78 +1,78 @@
|
||||
module("accordion");
|
||||
|
||||
jQuery.ui.accordion.defaults.animated = false;
|
||||
|
||||
function state(accordion) {
|
||||
var args = $.makeArray(arguments).slice(1);
|
||||
$.each(args, function(i, n) {
|
||||
equals(n, accordion.find("div").eq(i).is(":visible"));
|
||||
});
|
||||
}
|
||||
|
||||
test("basics", function() {
|
||||
state($('#list1').accordion(), 1, 0, 0);
|
||||
});
|
||||
|
||||
test("autoheight", function() {
|
||||
$('#navigation').accordion({ header: '.head', autoHeight: false });
|
||||
equals( 90, $('#navigation ul:first').height() );
|
||||
equals( 126, $('#navigation ul:eq(1)').height() );
|
||||
equals( 54, $('#navigation ul:last').height() );
|
||||
$('#navigation').accordion("destroy").accordion({ header: '.head', autoHeight: true });
|
||||
equals( 126, $('#navigation ul:first').height() );
|
||||
equals( 126, $('#navigation ul:eq(1)').height() );
|
||||
equals( 126, $('#navigation ul:last').height() );
|
||||
});
|
||||
|
||||
test("activate, numeric", function() {
|
||||
var ac = $('#list1').accordion({ active: 1 });
|
||||
state(ac, 0, 1, 0);
|
||||
ac.accordion("activate", 2);
|
||||
state(ac, 0, 0, 1);
|
||||
ac.accordion("activate", 0);
|
||||
state(ac, 1, 0, 0);
|
||||
ac.accordion("activate", 1);
|
||||
state(ac, 0, 1, 0);
|
||||
ac.accordion("activate", 2);
|
||||
state(ac, 0, 0, 1);
|
||||
ac.accordion("activate", -1);
|
||||
state(ac, 0, 0, 1);
|
||||
});
|
||||
|
||||
test("activate, boolean and numeric, alwaysOpen:false", function() {
|
||||
var ac = $('#list1').accordion({alwaysOpen: false}).accordion("activate", 2);
|
||||
state(ac, 0, 0, 1);
|
||||
ok("x", "----");
|
||||
ac.accordion("activate", 0);
|
||||
state(ac, 1, 0, 0);
|
||||
ok("x", "----");
|
||||
ac.accordion("activate", -1);
|
||||
state(ac, 0, 0, 0);
|
||||
});
|
||||
|
||||
test("activate, boolean, alwaysOpen:true", function() {
|
||||
var ac = $('#list1').accordion().accordion("activate", 2);
|
||||
state(ac, 0, 0, 1);
|
||||
ac.accordion("activate", -1);
|
||||
state(ac, 0, 0, 1);
|
||||
});
|
||||
|
||||
test("activate, string expression", function() {
|
||||
var ac = $('#list1').accordion({ active: ":last" });
|
||||
state(ac, 0, 0, 1);
|
||||
ac.accordion("activate", ":first");
|
||||
state(ac, 1, 0, 0);
|
||||
ac.accordion("activate", ":eq(1)");
|
||||
state(ac, 0, 1, 0);
|
||||
ac.accordion("activate", ":last");
|
||||
state(ac, 0, 0, 1);
|
||||
});
|
||||
|
||||
test("activate, jQuery or DOM element", function() {
|
||||
var ac = $('#list1').accordion({ active: $("#list1 a:last") });
|
||||
state(ac, 0, 0, 1);
|
||||
ac.accordion("activate", $("#list1 a:first"));
|
||||
state(ac, 1, 0, 0);
|
||||
ac.accordion("activate", $("#list1 a")[1]);
|
||||
state(ac, 0, 1, 0);
|
||||
module("accordion");
|
||||
|
||||
jQuery.ui.accordion.defaults.animated = false;
|
||||
|
||||
function state(accordion) {
|
||||
var args = $.makeArray(arguments).slice(1);
|
||||
$.each(args, function(i, n) {
|
||||
equals(n, accordion.find("div").eq(i).is(":visible"));
|
||||
});
|
||||
}
|
||||
|
||||
test("basics", function() {
|
||||
state($('#list1').accordion(), 1, 0, 0);
|
||||
});
|
||||
|
||||
test("autoheight", function() {
|
||||
$('#navigation').accordion({ header: '.head', autoHeight: false });
|
||||
equals( 90, $('#navigation ul:first').height() );
|
||||
equals( 126, $('#navigation ul:eq(1)').height() );
|
||||
equals( 54, $('#navigation ul:last').height() );
|
||||
$('#navigation').accordion("destroy").accordion({ header: '.head', autoHeight: true });
|
||||
equals( 126, $('#navigation ul:first').height() );
|
||||
equals( 126, $('#navigation ul:eq(1)').height() );
|
||||
equals( 126, $('#navigation ul:last').height() );
|
||||
});
|
||||
|
||||
test("activate, numeric", function() {
|
||||
var ac = $('#list1').accordion({ active: 1 });
|
||||
state(ac, 0, 1, 0);
|
||||
ac.accordion("activate", 2);
|
||||
state(ac, 0, 0, 1);
|
||||
ac.accordion("activate", 0);
|
||||
state(ac, 1, 0, 0);
|
||||
ac.accordion("activate", 1);
|
||||
state(ac, 0, 1, 0);
|
||||
ac.accordion("activate", 2);
|
||||
state(ac, 0, 0, 1);
|
||||
ac.accordion("activate", -1);
|
||||
state(ac, 0, 0, 1);
|
||||
});
|
||||
|
||||
test("activate, boolean and numeric, alwaysOpen:false", function() {
|
||||
var ac = $('#list1').accordion({alwaysOpen: false}).accordion("activate", 2);
|
||||
state(ac, 0, 0, 1);
|
||||
ok("x", "----");
|
||||
ac.accordion("activate", 0);
|
||||
state(ac, 1, 0, 0);
|
||||
ok("x", "----");
|
||||
ac.accordion("activate", -1);
|
||||
state(ac, 0, 0, 0);
|
||||
});
|
||||
|
||||
test("activate, boolean, alwaysOpen:true", function() {
|
||||
var ac = $('#list1').accordion().accordion("activate", 2);
|
||||
state(ac, 0, 0, 1);
|
||||
ac.accordion("activate", -1);
|
||||
state(ac, 0, 0, 1);
|
||||
});
|
||||
|
||||
test("activate, string expression", function() {
|
||||
var ac = $('#list1').accordion({ active: ":last" });
|
||||
state(ac, 0, 0, 1);
|
||||
ac.accordion("activate", ":first");
|
||||
state(ac, 1, 0, 0);
|
||||
ac.accordion("activate", ":eq(1)");
|
||||
state(ac, 0, 1, 0);
|
||||
ac.accordion("activate", ":last");
|
||||
state(ac, 0, 0, 1);
|
||||
});
|
||||
|
||||
test("activate, jQuery or DOM element", function() {
|
||||
var ac = $('#list1').accordion({ active: $("#list1 a:last") });
|
||||
state(ac, 0, 0, 1);
|
||||
ac.accordion("activate", $("#list1 a:first"));
|
||||
state(ac, 1, 0, 0);
|
||||
ac.accordion("activate", $("#list1 a")[1]);
|
||||
state(ac, 0, 1, 0);
|
||||
});
|
||||
@@ -1,182 +1,182 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>jQuery UI All Tests</title>
|
||||
<link rel="stylesheet" href="../../qunit/testsuite.css" type="text/css" media="screen">
|
||||
<script type="text/javascript" src="../../jquery/jquery-1.2.6.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../source/ui.core.js"></script>
|
||||
<script type="text/javascript" src="../source/ui.accordion.js"></script>
|
||||
<script type="text/javascript" src="../source/ui.slider.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../../qunit/testrunner.js"></script>
|
||||
|
||||
<script type="text/javascript" src="accordion.js"></script>
|
||||
<script type="text/javascript" src="slider.js"></script>
|
||||
<style type="text/css">
|
||||
.xerror, .error { display: none }
|
||||
</style>
|
||||
|
||||
</head>
|
||||
<body class="flora">
|
||||
<h1>jQuery UI All Tests</h1>
|
||||
<h2 id="banner"></h2>
|
||||
<h2 id="userAgent"></h2>
|
||||
|
||||
<h4>Run individual testsuites or doubleclick a test below</h4>
|
||||
<ul>
|
||||
<li><a href="accordion.html">Accordion</a></li>
|
||||
<li><a href="slider.html">Slider</a></li>
|
||||
</ul>
|
||||
|
||||
<ol id="tests"></ol>
|
||||
|
||||
<div id="main" style="position:absolute;top:-2000000px;">
|
||||
|
||||
<div id='slider1'></div>
|
||||
<div id='slider3' style="position: relative; margin: 40px; width: 217px; height: 28px; background: url(http://developer.yahoo.com/yui/examples/slider/assets/bg-fader.gif) no-repeat scroll 5px 0px;">
|
||||
<div class='ui-slider-handle' style='position: absolute; height: 21px; left: 0px; bottom: 0px; width: 17px; background-image: url(http://developer.yahoo.com/yui/examples/slider/assets/thumb-n.gif);'></div>
|
||||
</div>
|
||||
|
||||
<fieldset>
|
||||
<legend>Standard, container is a div, header is h3 and content p</legend>
|
||||
|
||||
<div id="list1">
|
||||
<a>There is one obvious advantage:</a>
|
||||
<div>
|
||||
<p>
|
||||
You've seen it coming!<br/>
|
||||
Buy now and get nothing for free!<br/>
|
||||
Well, at least no free beer. Perhaps a bear, if you can afford it.
|
||||
</p>
|
||||
</div>
|
||||
<a>Now that you've got...</a>
|
||||
<div>
|
||||
<p>
|
||||
your bear, you have to admit it!<br/>
|
||||
No, we aren't selling bears.
|
||||
</p>
|
||||
<p>
|
||||
We could talk about renting one.
|
||||
</p>
|
||||
</div>
|
||||
<a>Rent one bear, ...</a>
|
||||
<div>
|
||||
<p>
|
||||
get two for three beer.
|
||||
</p>
|
||||
<p>
|
||||
And now, for something completely different.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<legend>Navigation - Unordered List with anchors and nested lists.</legend>
|
||||
<p>The first item is cloned to allow the user to select it. The
|
||||
active element is choosen based on location.hash: Open Drums and click
|
||||
the first item ('Drums'), then reload the page.</p>
|
||||
|
||||
<ul id="navigation">
|
||||
<li>
|
||||
<a class="head" href="?p=1.1.1">Guitar</a>
|
||||
<ul>
|
||||
<li><a href="?p=1.1.1.1">Electric</a></li>
|
||||
<li><a href="?p=1.1.1.2">Acoustic</a></li>
|
||||
<li><a href="?p=1.1.1.3">Amps</a></li>
|
||||
<li><a href="?p=1.1.1.4">Effects</a></li>
|
||||
<li><a href="?p=1.1.1.5">Accessories</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a class="head" href="?p=1.1.2">Bass</a>
|
||||
<ul>
|
||||
<li><a href="?p=1.1.2.1">Electric</a></li>
|
||||
<li><a href="?p=1.1.2.2">Acoustic</a></li>
|
||||
<li><a href="?p=1.1.2.3">Amps</a></li>
|
||||
<li><a href="?p=1.1.2.4">Effects</a></li>
|
||||
<li><a href="?p=1.1.2.5">Accessories</a></li>
|
||||
<li><a href="?p=1.1.2.5">Accessories</a></li>
|
||||
<li><a href="?p=1.1.2.5">Accessories</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a class="head" href="?p=1.1.3">Drums</a>
|
||||
<ul>
|
||||
<li><a href="?p=1.1.3.2">Acoustic Drums</a></li>
|
||||
<li><a href="?p=1.1.3.3">Electronic Drums</a></li>
|
||||
<li><a href="?p=1.1.3.6">Accessories</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<legend>With options, container is a definition list, header dt, content dd</legend>
|
||||
|
||||
<dl id="list2">
|
||||
<dt class="red">Red</dt>
|
||||
<dd>
|
||||
Fancy stuff about red thingies.
|
||||
</dd>
|
||||
<dt class="green selected">Green</dt>
|
||||
<dd>
|
||||
Green! Green! Green!
|
||||
</dd>
|
||||
<dt class="blue">Blue</dt>
|
||||
<dd>
|
||||
Cool kids are blue.
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<legend>Divitus structure, div container, div header (class title), div
|
||||
content, no active on startup and can be completely closed</legend>
|
||||
|
||||
<div id="list3">
|
||||
<div>
|
||||
<div class="title">Tennis</div>
|
||||
<div>
|
||||
One ball, two players. Lots of fun.
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="title">Soccer</div>
|
||||
<div>
|
||||
One ball, 22 players. Lots of fun.
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="title">Baseball</div>
|
||||
<div>
|
||||
Well, one ball, some guys running around, some guys hitting others with a stick.<br/>
|
||||
Sounds like fun, doesn't it?
|
||||
</div>
|
||||
<div>
|
||||
Well, apart from the running part.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</fieldset>
|
||||
|
||||
<div id="switch">
|
||||
<select>
|
||||
<option>Switch to...</option>
|
||||
<option value="1">1</option>
|
||||
<option value="2">2</option>
|
||||
<option value="3">3</option>
|
||||
</select>
|
||||
<button id="close">Close all</button>
|
||||
Activate via selector, eg. ':first' or 'a:first': <input id="switch2" />
|
||||
</div>
|
||||
|
||||
<div id="log"><div><strong>Log of the 2nd accordion</strong></div></div>
|
||||
</div>
|
||||
</body>
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>jQuery UI All Tests</title>
|
||||
<link rel="stylesheet" href="../../qunit/testsuite.css" type="text/css" media="screen">
|
||||
<script type="text/javascript" src="../../jquery/jquery-1.2.6.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../source/ui.core.js"></script>
|
||||
<script type="text/javascript" src="../source/ui.accordion.js"></script>
|
||||
<script type="text/javascript" src="../source/ui.slider.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../../qunit/testrunner.js"></script>
|
||||
|
||||
<script type="text/javascript" src="accordion.js"></script>
|
||||
<script type="text/javascript" src="slider.js"></script>
|
||||
<style type="text/css">
|
||||
.xerror, .error { display: none }
|
||||
</style>
|
||||
|
||||
</head>
|
||||
<body class="flora">
|
||||
<h1>jQuery UI All Tests</h1>
|
||||
<h2 id="banner"></h2>
|
||||
<h2 id="userAgent"></h2>
|
||||
|
||||
<h4>Run individual testsuites or doubleclick a test below</h4>
|
||||
<ul>
|
||||
<li><a href="accordion.html">Accordion</a></li>
|
||||
<li><a href="slider.html">Slider</a></li>
|
||||
</ul>
|
||||
|
||||
<ol id="tests"></ol>
|
||||
|
||||
<div id="main" style="position:absolute;top:-2000000px;">
|
||||
|
||||
<div id='slider1'></div>
|
||||
<div id='slider3' style="position: relative; margin: 40px; width: 217px; height: 28px; background: url(http://developer.yahoo.com/yui/examples/slider/assets/bg-fader.gif) no-repeat scroll 5px 0px;">
|
||||
<div class='ui-slider-handle' style='position: absolute; height: 21px; left: 0px; bottom: 0px; width: 17px; background-image: url(http://developer.yahoo.com/yui/examples/slider/assets/thumb-n.gif);'></div>
|
||||
</div>
|
||||
|
||||
<fieldset>
|
||||
<legend>Standard, container is a div, header is h3 and content p</legend>
|
||||
|
||||
<div id="list1">
|
||||
<a>There is one obvious advantage:</a>
|
||||
<div>
|
||||
<p>
|
||||
You've seen it coming!<br/>
|
||||
Buy now and get nothing for free!<br/>
|
||||
Well, at least no free beer. Perhaps a bear, if you can afford it.
|
||||
</p>
|
||||
</div>
|
||||
<a>Now that you've got...</a>
|
||||
<div>
|
||||
<p>
|
||||
your bear, you have to admit it!<br/>
|
||||
No, we aren't selling bears.
|
||||
</p>
|
||||
<p>
|
||||
We could talk about renting one.
|
||||
</p>
|
||||
</div>
|
||||
<a>Rent one bear, ...</a>
|
||||
<div>
|
||||
<p>
|
||||
get two for three beer.
|
||||
</p>
|
||||
<p>
|
||||
And now, for something completely different.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<legend>Navigation - Unordered List with anchors and nested lists.</legend>
|
||||
<p>The first item is cloned to allow the user to select it. The
|
||||
active element is choosen based on location.hash: Open Drums and click
|
||||
the first item ('Drums'), then reload the page.</p>
|
||||
|
||||
<ul id="navigation">
|
||||
<li>
|
||||
<a class="head" href="?p=1.1.1">Guitar</a>
|
||||
<ul>
|
||||
<li><a href="?p=1.1.1.1">Electric</a></li>
|
||||
<li><a href="?p=1.1.1.2">Acoustic</a></li>
|
||||
<li><a href="?p=1.1.1.3">Amps</a></li>
|
||||
<li><a href="?p=1.1.1.4">Effects</a></li>
|
||||
<li><a href="?p=1.1.1.5">Accessories</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a class="head" href="?p=1.1.2">Bass</a>
|
||||
<ul>
|
||||
<li><a href="?p=1.1.2.1">Electric</a></li>
|
||||
<li><a href="?p=1.1.2.2">Acoustic</a></li>
|
||||
<li><a href="?p=1.1.2.3">Amps</a></li>
|
||||
<li><a href="?p=1.1.2.4">Effects</a></li>
|
||||
<li><a href="?p=1.1.2.5">Accessories</a></li>
|
||||
<li><a href="?p=1.1.2.5">Accessories</a></li>
|
||||
<li><a href="?p=1.1.2.5">Accessories</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a class="head" href="?p=1.1.3">Drums</a>
|
||||
<ul>
|
||||
<li><a href="?p=1.1.3.2">Acoustic Drums</a></li>
|
||||
<li><a href="?p=1.1.3.3">Electronic Drums</a></li>
|
||||
<li><a href="?p=1.1.3.6">Accessories</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<legend>With options, container is a definition list, header dt, content dd</legend>
|
||||
|
||||
<dl id="list2">
|
||||
<dt class="red">Red</dt>
|
||||
<dd>
|
||||
Fancy stuff about red thingies.
|
||||
</dd>
|
||||
<dt class="green selected">Green</dt>
|
||||
<dd>
|
||||
Green! Green! Green!
|
||||
</dd>
|
||||
<dt class="blue">Blue</dt>
|
||||
<dd>
|
||||
Cool kids are blue.
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<legend>Divitus structure, div container, div header (class title), div
|
||||
content, no active on startup and can be completely closed</legend>
|
||||
|
||||
<div id="list3">
|
||||
<div>
|
||||
<div class="title">Tennis</div>
|
||||
<div>
|
||||
One ball, two players. Lots of fun.
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="title">Soccer</div>
|
||||
<div>
|
||||
One ball, 22 players. Lots of fun.
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="title">Baseball</div>
|
||||
<div>
|
||||
Well, one ball, some guys running around, some guys hitting others with a stick.<br/>
|
||||
Sounds like fun, doesn't it?
|
||||
</div>
|
||||
<div>
|
||||
Well, apart from the running part.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</fieldset>
|
||||
|
||||
<div id="switch">
|
||||
<select>
|
||||
<option>Switch to...</option>
|
||||
<option value="1">1</option>
|
||||
<option value="2">2</option>
|
||||
<option value="3">3</option>
|
||||
</select>
|
||||
<button id="close">Close all</button>
|
||||
Activate via selector, eg. ':first' or 'a:first': <input id="switch2" />
|
||||
</div>
|
||||
|
||||
<div id="log"><div><strong>Log of the 2nd accordion</strong></div></div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,154 +1,154 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>jQuery UI - Automated Tests</title>
|
||||
<script type="text/javascript" src="../../jquery/jquery-1.2.6.js"></script>
|
||||
<script type="text/javascript" src="../../ui/source/ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../ui/source/ui.draggable.js"></script>
|
||||
<script type="text/javascript" src="../../ui/source/ui.selectable.js"></script>
|
||||
|
||||
<script type="text/javascript" src="ui.testmouse.js"></script>
|
||||
|
||||
<style type="text/css">
|
||||
|
||||
html, body { height: 100%; }
|
||||
#main { height: 100%; }
|
||||
|
||||
#foo { position: relative; margin: 10px; padding: 10px; border: 3px solid gray; width: 200px; height: 200px; background: #eef; text-align: center; }
|
||||
#foo * { margin: 4px; }
|
||||
.ui-draggable .msg-missing-class { display: none !important; background: red; color: white; font-weight: bold; }
|
||||
.ui-draggable .msg-enabled { display: block; }
|
||||
.ui-draggable .msg-disabled { display: none; }
|
||||
.ui-draggable-disabled .msg-enabled { display: none !important; }
|
||||
.ui-draggable-disabled .msg-disabled { display: block !important; }
|
||||
.ui-selectable .msg-missing-class { display: none !important; background: red; color: white; font-weight: bold; }
|
||||
.ui-selectable .msg-enabled { display: block; }
|
||||
.ui-selectable .msg-disabled { display: none; }
|
||||
.ui-selectable-disabled .msg-enabled { display: none !important; }
|
||||
.ui-selectable-disabled .msg-disabled { display: block !important; }
|
||||
//.ui-selectee { border: 1px solid white; }
|
||||
.ui-selecting { background: Highlight; color: HighlightText; outline: 1px dotted white; }
|
||||
.ui-selected { background: Highlight; color: HighlightText; outline: 1px dotted black; }
|
||||
|
||||
</style>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
|
||||
var speed = "fast";
|
||||
|
||||
var queue;
|
||||
var start = function() {
|
||||
queue = tests.slice().reverse(); // clone
|
||||
$("#status").text("Running...");
|
||||
nextTest();
|
||||
}
|
||||
var stop = function() {
|
||||
$("#status").text("Ready");
|
||||
teardown();
|
||||
}
|
||||
|
||||
var tests = [];
|
||||
var nextTest = function() {
|
||||
if (queue.length) {
|
||||
var nTest = queue.pop();
|
||||
teardown(function() {
|
||||
setupAndRun(nTest);
|
||||
});
|
||||
} else {
|
||||
stop();
|
||||
}
|
||||
}
|
||||
|
||||
var num = 0;
|
||||
|
||||
var addTest = function(fn) {
|
||||
num += 1;
|
||||
tests.push({
|
||||
num: num,
|
||||
fn: fn
|
||||
});
|
||||
}
|
||||
|
||||
var setupAndRun = function(nTest) {
|
||||
$('#testnum').text(nTest.num);
|
||||
$('#sandbox').hide()
|
||||
.append('<ul id="foo">' +
|
||||
'<li class="msg-missing-class">THIS TEXT SHOULD NOT BE VISIBLE</li>' +
|
||||
'<li class="msg-enabled">enabled</li>' +
|
||||
'<li class="msg-disabled">disabled</li>' +
|
||||
'<li>Item 2</li>' +
|
||||
'<li>Item 3</li>' +
|
||||
'<li>Item 4</li>' +
|
||||
'<li>Item 5</li>' +
|
||||
'<li>Item 6</li>' +
|
||||
'<li>Item 7</li>' +
|
||||
'<li>Item 8</li>' +
|
||||
'</ul>')
|
||||
$('#foo').testMouse({
|
||||
speed: speed,
|
||||
complete: nextTest
|
||||
});
|
||||
$('#sandbox').show();
|
||||
nTest.fn.apply(nTest.fn);
|
||||
}
|
||||
|
||||
var teardown = function(fn) {
|
||||
$('#sandbox').hide();
|
||||
$('#foo').remove();
|
||||
if ($.isFunction(fn)) fn.apply();
|
||||
}
|
||||
var plugin = "draggable";
|
||||
plugin = "selectable"
|
||||
var testFn = "testMouse";
|
||||
var testArgs = ["drag", 40, 50];
|
||||
//1
|
||||
addTest(function() { $("#foo")[plugin]()[testFn].apply($("#foo"), testArgs); });
|
||||
//2
|
||||
addTest(function() { $("#foo")[plugin]({ disabled: true })[testFn].apply($("#foo"), testArgs); });
|
||||
addTest(function() { $("#foo")[plugin]({ disabled: false })[testFn].apply($("#foo"), testArgs); });
|
||||
//4
|
||||
addTest(function() { $("#foo")[plugin]()[plugin]('disable')[testFn].apply($("#foo"), testArgs); });
|
||||
addTest(function() { $("#foo")[plugin]()[plugin]('enable')[testFn].apply($("#foo"), testArgs); });
|
||||
//6
|
||||
addTest(function() { $("#foo")[plugin]()[plugin]('enable')[plugin]('disable')[testFn].apply($("#foo"), testArgs); });
|
||||
addTest(function() { $("#foo")[plugin]()[plugin]('disable')[plugin]('enable')[testFn].apply($("#foo"), testArgs); });
|
||||
//8
|
||||
addTest(function() { $("#foo")[plugin]({ disabled: false })[plugin]('disable')[testFn].apply($("#foo"), testArgs); });
|
||||
addTest(function() { $("#foo")[plugin]({ disabled: true })[plugin]('enable')[testFn].apply($("#foo"), testArgs); });
|
||||
//10
|
||||
addTest(function() { $("#foo")[plugin]({ disabled: false }).data('disabled.' + plugin, true)[testFn].apply($("#foo"), testArgs); });
|
||||
addTest(function() { $("#foo")[plugin]({ disabled: true }).data('disabled.' + plugin, false)[testFn].apply($("#foo"), testArgs); });
|
||||
|
||||
$('#begin').click(function() {
|
||||
start();
|
||||
});
|
||||
|
||||
});
|
||||
</script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div id="main">
|
||||
|
||||
<h1>jQuery UI - Automated Tests</h1>
|
||||
|
||||
<div>
|
||||
Status: <span id="status">Ready</span>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
Test: <span id="testnum"></span>
|
||||
</div>
|
||||
|
||||
<div style="height: 3em;"><button id="begin">Run Test</button></div>
|
||||
|
||||
<div id="sandbox">
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<title>jQuery UI - Automated Tests</title>
|
||||
<script type="text/javascript" src="../../jquery/jquery-1.2.6.js"></script>
|
||||
<script type="text/javascript" src="../../ui/source/ui.core.js"></script>
|
||||
<script type="text/javascript" src="../../ui/source/ui.draggable.js"></script>
|
||||
<script type="text/javascript" src="../../ui/source/ui.selectable.js"></script>
|
||||
|
||||
<script type="text/javascript" src="ui.testmouse.js"></script>
|
||||
|
||||
<style type="text/css">
|
||||
|
||||
html, body { height: 100%; }
|
||||
#main { height: 100%; }
|
||||
|
||||
#foo { position: relative; margin: 10px; padding: 10px; border: 3px solid gray; width: 200px; height: 200px; background: #eef; text-align: center; }
|
||||
#foo * { margin: 4px; }
|
||||
.ui-draggable .msg-missing-class { display: none !important; background: red; color: white; font-weight: bold; }
|
||||
.ui-draggable .msg-enabled { display: block; }
|
||||
.ui-draggable .msg-disabled { display: none; }
|
||||
.ui-draggable-disabled .msg-enabled { display: none !important; }
|
||||
.ui-draggable-disabled .msg-disabled { display: block !important; }
|
||||
.ui-selectable .msg-missing-class { display: none !important; background: red; color: white; font-weight: bold; }
|
||||
.ui-selectable .msg-enabled { display: block; }
|
||||
.ui-selectable .msg-disabled { display: none; }
|
||||
.ui-selectable-disabled .msg-enabled { display: none !important; }
|
||||
.ui-selectable-disabled .msg-disabled { display: block !important; }
|
||||
//.ui-selectee { border: 1px solid white; }
|
||||
.ui-selecting { background: Highlight; color: HighlightText; outline: 1px dotted white; }
|
||||
.ui-selected { background: Highlight; color: HighlightText; outline: 1px dotted black; }
|
||||
|
||||
</style>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
|
||||
var speed = "fast";
|
||||
|
||||
var queue;
|
||||
var start = function() {
|
||||
queue = tests.slice().reverse(); // clone
|
||||
$("#status").text("Running...");
|
||||
nextTest();
|
||||
}
|
||||
var stop = function() {
|
||||
$("#status").text("Ready");
|
||||
teardown();
|
||||
}
|
||||
|
||||
var tests = [];
|
||||
var nextTest = function() {
|
||||
if (queue.length) {
|
||||
var nTest = queue.pop();
|
||||
teardown(function() {
|
||||
setupAndRun(nTest);
|
||||
});
|
||||
} else {
|
||||
stop();
|
||||
}
|
||||
}
|
||||
|
||||
var num = 0;
|
||||
|
||||
var addTest = function(fn) {
|
||||
num += 1;
|
||||
tests.push({
|
||||
num: num,
|
||||
fn: fn
|
||||
});
|
||||
}
|
||||
|
||||
var setupAndRun = function(nTest) {
|
||||
$('#testnum').text(nTest.num);
|
||||
$('#sandbox').hide()
|
||||
.append('<ul id="foo">' +
|
||||
'<li class="msg-missing-class">THIS TEXT SHOULD NOT BE VISIBLE</li>' +
|
||||
'<li class="msg-enabled">enabled</li>' +
|
||||
'<li class="msg-disabled">disabled</li>' +
|
||||
'<li>Item 2</li>' +
|
||||
'<li>Item 3</li>' +
|
||||
'<li>Item 4</li>' +
|
||||
'<li>Item 5</li>' +
|
||||
'<li>Item 6</li>' +
|
||||
'<li>Item 7</li>' +
|
||||
'<li>Item 8</li>' +
|
||||
'</ul>')
|
||||
$('#foo').testMouse({
|
||||
speed: speed,
|
||||
complete: nextTest
|
||||
});
|
||||
$('#sandbox').show();
|
||||
nTest.fn.apply(nTest.fn);
|
||||
}
|
||||
|
||||
var teardown = function(fn) {
|
||||
$('#sandbox').hide();
|
||||
$('#foo').remove();
|
||||
if ($.isFunction(fn)) fn.apply();
|
||||
}
|
||||
var plugin = "draggable";
|
||||
plugin = "selectable"
|
||||
var testFn = "testMouse";
|
||||
var testArgs = ["drag", 40, 50];
|
||||
//1
|
||||
addTest(function() { $("#foo")[plugin]()[testFn].apply($("#foo"), testArgs); });
|
||||
//2
|
||||
addTest(function() { $("#foo")[plugin]({ disabled: true })[testFn].apply($("#foo"), testArgs); });
|
||||
addTest(function() { $("#foo")[plugin]({ disabled: false })[testFn].apply($("#foo"), testArgs); });
|
||||
//4
|
||||
addTest(function() { $("#foo")[plugin]()[plugin]('disable')[testFn].apply($("#foo"), testArgs); });
|
||||
addTest(function() { $("#foo")[plugin]()[plugin]('enable')[testFn].apply($("#foo"), testArgs); });
|
||||
//6
|
||||
addTest(function() { $("#foo")[plugin]()[plugin]('enable')[plugin]('disable')[testFn].apply($("#foo"), testArgs); });
|
||||
addTest(function() { $("#foo")[plugin]()[plugin]('disable')[plugin]('enable')[testFn].apply($("#foo"), testArgs); });
|
||||
//8
|
||||
addTest(function() { $("#foo")[plugin]({ disabled: false })[plugin]('disable')[testFn].apply($("#foo"), testArgs); });
|
||||
addTest(function() { $("#foo")[plugin]({ disabled: true })[plugin]('enable')[testFn].apply($("#foo"), testArgs); });
|
||||
//10
|
||||
addTest(function() { $("#foo")[plugin]({ disabled: false }).data('disabled.' + plugin, true)[testFn].apply($("#foo"), testArgs); });
|
||||
addTest(function() { $("#foo")[plugin]({ disabled: true }).data('disabled.' + plugin, false)[testFn].apply($("#foo"), testArgs); });
|
||||
|
||||
$('#begin').click(function() {
|
||||
start();
|
||||
});
|
||||
|
||||
});
|
||||
</script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div id="main">
|
||||
|
||||
<h1>jQuery UI - Automated Tests</h1>
|
||||
|
||||
<div>
|
||||
Status: <span id="status">Ready</span>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
Test: <span id="testnum"></span>
|
||||
</div>
|
||||
|
||||
<div style="height: 3em;"><button id="begin">Run Test</button></div>
|
||||
|
||||
<div id="sandbox">
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -1,40 +1,40 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Language" content="en" />
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Draggable Test Page</title>
|
||||
<link rel="stylesheet" href="../../qunit/testsuite.css" type="text/css" media="screen">
|
||||
|
||||
<script type="text/javascript" src="../../jquery/jquery-1.2.6.js"></script>
|
||||
<script type="text/javascript" src="../source/ui.core.js"></script>
|
||||
<script type="text/javascript" src="../source/ui.draggable.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../../qunit/testrunner.js"></script>
|
||||
<script type="text/javascript" src="draggable.js"></script>
|
||||
<script type="text/javascript" src="jquery.useraction.js"></script>
|
||||
|
||||
<style>
|
||||
#main {
|
||||
position:absolute !important;
|
||||
top: -1000px !important;
|
||||
left: -1000px !important;
|
||||
}
|
||||
</style>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h1 id="header">Draggable Test Suite</h1>
|
||||
<h2 id="banner"></h2>
|
||||
<h2 id="userAgent"></h2>
|
||||
|
||||
<div id="main" style="border: 1px solid black; padding: 10px; margin: 10px;">
|
||||
<div id='draggable1' style="background: green; width: 200px; height: 100px;">Static</div>
|
||||
<div id='draggable2' style="background: green; width: 200px; height: 100px; position: absolute; top: 10px; left: 10px;"><span>Absolute</span></div>
|
||||
</div>
|
||||
|
||||
<ol id="tests"></ol>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Language" content="en" />
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Draggable Test Page</title>
|
||||
<link rel="stylesheet" href="../../qunit/testsuite.css" type="text/css" media="screen">
|
||||
|
||||
<script type="text/javascript" src="../../jquery/jquery-1.2.6.js"></script>
|
||||
<script type="text/javascript" src="../source/ui.core.js"></script>
|
||||
<script type="text/javascript" src="../source/ui.draggable.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../../qunit/testrunner.js"></script>
|
||||
<script type="text/javascript" src="draggable.js"></script>
|
||||
<script type="text/javascript" src="jquery.useraction.js"></script>
|
||||
|
||||
<style>
|
||||
#main {
|
||||
position:absolute !important;
|
||||
top: -1000px !important;
|
||||
left: -1000px !important;
|
||||
}
|
||||
</style>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h1 id="header">Draggable Test Suite</h1>
|
||||
<h2 id="banner"></h2>
|
||||
<h2 id="userAgent"></h2>
|
||||
|
||||
<div id="main" style="border: 1px solid black; padding: 10px; margin: 10px;">
|
||||
<div id='draggable1' style="background: green; width: 200px; height: 100px;">Static</div>
|
||||
<div id='draggable2' style="background: green; width: 200px; height: 100px; position: absolute; top: 10px; left: 10px;"><span>Absolute</span></div>
|
||||
</div>
|
||||
|
||||
<ol id="tests"></ol>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -1,322 +1,322 @@
|
||||
var drag = function(el, dx, dy, complete) {
|
||||
|
||||
// speed = sync -> Drag syncrhonously.
|
||||
// speed = fast|slow -> Drag asyncrhonously - animated.
|
||||
|
||||
return $(el).userAction("drag", {
|
||||
dx: dx||0, dy: dy||0, speed: 'sync', complete: complete
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
module("Draggable");
|
||||
|
||||
test("create and destroy", function() {
|
||||
|
||||
expect(2);
|
||||
|
||||
$("#draggable1").draggable();
|
||||
ok($("#draggable1").data("draggable"), "Accessing draggable instance after creation");
|
||||
|
||||
$("#draggable1").draggable("destroy");
|
||||
ok(!$("#draggable1").data("draggable"), "Accessing draggable instance after destroy");
|
||||
|
||||
});
|
||||
|
||||
test("No options, relative", function() {
|
||||
|
||||
expect(4);
|
||||
|
||||
$("#draggable1").draggable();
|
||||
|
||||
var offset = $("#draggable1").data("draggable").element.offset();
|
||||
equals(offset.left, -979, "Checking initial left position");
|
||||
equals(offset.top, -979, "Checking initial top position");
|
||||
|
||||
drag("#draggable1", 50, 50);
|
||||
|
||||
var offset = $("#draggable1").data("draggable").element.offset();
|
||||
equals(offset.left, -929, "Checking new left position");
|
||||
equals(offset.top, -929, "Checking new top position");
|
||||
|
||||
|
||||
});
|
||||
|
||||
test("No options, absolute", function() {
|
||||
|
||||
expect(4);
|
||||
|
||||
$("#draggable2").draggable();
|
||||
|
||||
var offset = $("#draggable2").data("draggable").element.offset();
|
||||
equals(offset.left, -979, "Checking initial left position");
|
||||
equals(offset.top, -979, "Checking initial top position");
|
||||
|
||||
drag("#draggable2", 50, 50);
|
||||
|
||||
var offset = $("#draggable2").data("draggable").element.offset();
|
||||
equals(offset.left, -929, "Checking new left position");
|
||||
equals(offset.top, -929, "Checking new top position");
|
||||
|
||||
|
||||
});
|
||||
|
||||
test("{ helper: 'clone' }", function() {
|
||||
|
||||
expect(4);
|
||||
|
||||
$("#draggable1, #draggable2").draggable({ helper: "clone" });
|
||||
|
||||
drag("#draggable1, #draggable2", 50, 50);
|
||||
|
||||
var offset = $("#draggable1").data("draggable").element.offset();
|
||||
equals(offset.left, -979, "Relative: Original position should be untouched");
|
||||
equals(offset.top, -979, "Relative: Original position should be untouched");
|
||||
|
||||
var offset = $("#draggable2").data("draggable").element.offset();
|
||||
equals(offset.left, -979, "Absolute: Original position should be untouched");
|
||||
equals(offset.top, -979, "Absolute: Original position should be untouched");
|
||||
|
||||
|
||||
});
|
||||
|
||||
test("{ grid: [50,50] }", function() {
|
||||
|
||||
expect(4);
|
||||
|
||||
$("#draggable1, #draggable2").draggable({ grid: [50,50] });
|
||||
|
||||
drag("#draggable1, #draggable2", 30, 30);
|
||||
|
||||
var offset = $("#draggable1").data("draggable").element.offset();
|
||||
equals(offset.left, -929, "Relative: 50px move in grid");
|
||||
equals(offset.top, -929, "Relative: 50px move in grid");
|
||||
|
||||
var offset = $("#draggable2").data("draggable").element.offset();
|
||||
equals(offset.left, -929, "Absolute: 50px move in grid");
|
||||
equals(offset.top, -929, "Absolute: 50px move in grid");
|
||||
|
||||
|
||||
});
|
||||
|
||||
test("{ axis: 'y' }", function() {
|
||||
|
||||
expect(4);
|
||||
|
||||
$("#draggable1, #draggable2").draggable({ axis: "y" });
|
||||
|
||||
drag("#draggable1, #draggable2", 50, 50);
|
||||
|
||||
var offset = $("#draggable1").data("draggable").element.offset();
|
||||
equals(offset.left, -979, "Relative: 0px move");
|
||||
equals(offset.top, -929, "Relative: 50px move");
|
||||
|
||||
var offset = $("#draggable2").data("draggable").element.offset();
|
||||
equals(offset.left, -979, "Absolute: 0px move");
|
||||
equals(offset.top, -929, "Absolute: 50px move");
|
||||
|
||||
|
||||
});
|
||||
|
||||
test("{ axis: 'x' }", function() {
|
||||
|
||||
expect(4);
|
||||
|
||||
$("#draggable1, #draggable2").draggable({ axis: "x" });
|
||||
|
||||
drag("#draggable1, #draggable2", 50, 50);
|
||||
|
||||
var offset = $("#draggable1").data("draggable").element.offset();
|
||||
equals(offset.left, -929, "Relative: 50px move");
|
||||
equals(offset.top, -979, "Relative: 0px move");
|
||||
|
||||
var offset = $("#draggable2").data("draggable").element.offset();
|
||||
equals(offset.left, -929, "Absolute: 50px move");
|
||||
equals(offset.top, -979, "Absolute: 0px move");
|
||||
|
||||
|
||||
});
|
||||
|
||||
test("{ cancel: 'span' }", function() {
|
||||
|
||||
expect(2);
|
||||
|
||||
$("#draggable2").draggable({ cancel: 'span' });
|
||||
|
||||
drag("#draggable2 span", 50, 50);
|
||||
|
||||
var offset = $("#draggable2").data("draggable").element.offset();
|
||||
equals(offset.left, -979, "Trigger on span: 0px move");
|
||||
equals(offset.top, -979, "Trigger on span: 0px move");
|
||||
|
||||
|
||||
});
|
||||
|
||||
test("{ handle: 'span' }", function() {
|
||||
|
||||
expect(4);
|
||||
|
||||
$("#draggable2").draggable({ handle: 'span' });
|
||||
|
||||
drag("#draggable2 span", 50, 50);
|
||||
|
||||
var offset = $("#draggable2").data("draggable").element.offset();
|
||||
equals(offset.left, -929, "Trigger on span: 50px move");
|
||||
equals(offset.top, -929, "Trigger on span: 50px move");
|
||||
|
||||
drag("#draggable2", 50, 50);
|
||||
|
||||
var offset = $("#draggable2").data("draggable").element.offset();
|
||||
equals(offset.left, -929, "Trigger on element: 0px move");
|
||||
equals(offset.top, -929, "Trigger on element: 0px move");
|
||||
|
||||
|
||||
});
|
||||
|
||||
test("{ containment: 'parent' }", function() {
|
||||
|
||||
expect(4);
|
||||
|
||||
$("#draggable2, #draggable1").draggable({ containment: 'parent' });
|
||||
|
||||
drag("#draggable2, #draggable1", -100, -100);
|
||||
|
||||
var offset = $("#draggable2").data("draggable").element.offset();
|
||||
equals(offset.left, -989, "Absolute: 10px move (to parent's margin end)");
|
||||
equals(offset.top, -989, "Absolute: 10px move (to parent's margin end)");
|
||||
|
||||
var offset = $("#draggable1").data("draggable").element.offset();
|
||||
equals(offset.left, -989, "Relative: 10px move (to parent's margin end)");
|
||||
equals(offset.top, -989, "Relative: 10px move (to parent's margin end)");
|
||||
|
||||
|
||||
});
|
||||
|
||||
test("{ cursorAt: { left: -5, top: -5 } }", function() {
|
||||
|
||||
expect(4);
|
||||
|
||||
var position = null;
|
||||
$("#draggable2").draggable({
|
||||
cursorAt: { left: -5, top: -5 },
|
||||
drag: function(e, ui) {
|
||||
position = ui.absolutePosition;
|
||||
}
|
||||
});
|
||||
|
||||
drag("#draggable2", -1, -1);
|
||||
|
||||
equals(position.left, -875, "Absolute: -1px move");
|
||||
equals(position.top, -925, "Absolute: -1px move");
|
||||
|
||||
var position = null;
|
||||
$("#draggable1").draggable({
|
||||
cursorAt: { left: -5, top: -5 },
|
||||
drag: function(e, ui) {
|
||||
position = ui.absolutePosition;
|
||||
}
|
||||
});
|
||||
|
||||
drag("#draggable1", -1, -1);
|
||||
|
||||
equals(position.left, -875, "Relative: -1px move");
|
||||
equals(position.top, -925, "Relative: -1px move");
|
||||
|
||||
});
|
||||
|
||||
test("{ cursor: 'move' }", function() {
|
||||
|
||||
expect(2);
|
||||
|
||||
var cursor = null;
|
||||
$("#draggable2").draggable({
|
||||
cursor: "move",
|
||||
start: function(e, ui) {
|
||||
cursor = $("body").css("cursor");
|
||||
}
|
||||
});
|
||||
|
||||
drag("#draggable2", -1, -1);
|
||||
|
||||
equals(cursor, "move", "start callback: cursor 'move'");
|
||||
equals($("body").css("cursor"), "auto", "after drag: cursor restored");
|
||||
|
||||
});
|
||||
|
||||
test("{ distance: 10 }", function() {
|
||||
|
||||
expect(2);
|
||||
|
||||
var dragged = false;
|
||||
$("#draggable2").draggable({
|
||||
distance: 10,
|
||||
start: function(e, ui) {
|
||||
dragged = true;
|
||||
}
|
||||
});
|
||||
|
||||
drag("#draggable2", -9, -9);
|
||||
equals(dragged, false, "The draggable should not have moved when moving -9px");
|
||||
|
||||
drag("#draggable2", -10, -10);
|
||||
equals(dragged, true, "The draggable should have moved when moving -10px");
|
||||
|
||||
});
|
||||
|
||||
test("{ opacity: 0.5 }", function() {
|
||||
|
||||
expect(1);
|
||||
|
||||
var opacity = null;
|
||||
$("#draggable2").draggable({
|
||||
opacity: 0.5,
|
||||
start: function(e, ui) {
|
||||
opacity = $(this).css("opacity");
|
||||
}
|
||||
});
|
||||
|
||||
drag("#draggable2", -1, -1);
|
||||
|
||||
equals(opacity, "0.5", "start callback: opacity is 0.5");
|
||||
|
||||
});
|
||||
|
||||
test("{ zIndex: 10 }", function() {
|
||||
|
||||
expect(1);
|
||||
|
||||
var zIndex = null;
|
||||
$("#draggable2").draggable({
|
||||
zIndex: 10,
|
||||
start: function(e, ui) {
|
||||
zIndex = $(this).css("zIndex");
|
||||
}
|
||||
});
|
||||
|
||||
drag("#draggable2", -1, -1);
|
||||
|
||||
equals(zIndex, "10", "start callback: zIndex is 10");
|
||||
|
||||
});
|
||||
|
||||
test("callbacks occurance count", function() {
|
||||
|
||||
expect(3);
|
||||
|
||||
var start = 0, stop = 0, dragc = 0;
|
||||
$("#draggable2").draggable({
|
||||
start: function() { start++; },
|
||||
drag: function() { dragc++; },
|
||||
stop: function() { stop++; }
|
||||
});
|
||||
|
||||
drag("#draggable2", 10, 10);
|
||||
|
||||
equals(start, 1, "start callback should happen exactly once");
|
||||
equals(dragc, 11, "drag callback should happen exactly 1+10 times (first simultaneously with start)");
|
||||
equals(stop, 1, "stop callback should happen exactly once");
|
||||
|
||||
});
|
||||
|
||||
|
||||
|
||||
var drag = function(el, dx, dy, complete) {
|
||||
|
||||
// speed = sync -> Drag syncrhonously.
|
||||
// speed = fast|slow -> Drag asyncrhonously - animated.
|
||||
|
||||
return $(el).userAction("drag", {
|
||||
dx: dx||0, dy: dy||0, speed: 'sync', complete: complete
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
module("Draggable");
|
||||
|
||||
test("create and destroy", function() {
|
||||
|
||||
expect(2);
|
||||
|
||||
$("#draggable1").draggable();
|
||||
ok($("#draggable1").data("draggable"), "Accessing draggable instance after creation");
|
||||
|
||||
$("#draggable1").draggable("destroy");
|
||||
ok(!$("#draggable1").data("draggable"), "Accessing draggable instance after destroy");
|
||||
|
||||
});
|
||||
|
||||
test("No options, relative", function() {
|
||||
|
||||
expect(4);
|
||||
|
||||
$("#draggable1").draggable();
|
||||
|
||||
var offset = $("#draggable1").data("draggable").element.offset();
|
||||
equals(offset.left, -979, "Checking initial left position");
|
||||
equals(offset.top, -979, "Checking initial top position");
|
||||
|
||||
drag("#draggable1", 50, 50);
|
||||
|
||||
var offset = $("#draggable1").data("draggable").element.offset();
|
||||
equals(offset.left, -929, "Checking new left position");
|
||||
equals(offset.top, -929, "Checking new top position");
|
||||
|
||||
|
||||
});
|
||||
|
||||
test("No options, absolute", function() {
|
||||
|
||||
expect(4);
|
||||
|
||||
$("#draggable2").draggable();
|
||||
|
||||
var offset = $("#draggable2").data("draggable").element.offset();
|
||||
equals(offset.left, -979, "Checking initial left position");
|
||||
equals(offset.top, -979, "Checking initial top position");
|
||||
|
||||
drag("#draggable2", 50, 50);
|
||||
|
||||
var offset = $("#draggable2").data("draggable").element.offset();
|
||||
equals(offset.left, -929, "Checking new left position");
|
||||
equals(offset.top, -929, "Checking new top position");
|
||||
|
||||
|
||||
});
|
||||
|
||||
test("{ helper: 'clone' }", function() {
|
||||
|
||||
expect(4);
|
||||
|
||||
$("#draggable1, #draggable2").draggable({ helper: "clone" });
|
||||
|
||||
drag("#draggable1, #draggable2", 50, 50);
|
||||
|
||||
var offset = $("#draggable1").data("draggable").element.offset();
|
||||
equals(offset.left, -979, "Relative: Original position should be untouched");
|
||||
equals(offset.top, -979, "Relative: Original position should be untouched");
|
||||
|
||||
var offset = $("#draggable2").data("draggable").element.offset();
|
||||
equals(offset.left, -979, "Absolute: Original position should be untouched");
|
||||
equals(offset.top, -979, "Absolute: Original position should be untouched");
|
||||
|
||||
|
||||
});
|
||||
|
||||
test("{ grid: [50,50] }", function() {
|
||||
|
||||
expect(4);
|
||||
|
||||
$("#draggable1, #draggable2").draggable({ grid: [50,50] });
|
||||
|
||||
drag("#draggable1, #draggable2", 30, 30);
|
||||
|
||||
var offset = $("#draggable1").data("draggable").element.offset();
|
||||
equals(offset.left, -929, "Relative: 50px move in grid");
|
||||
equals(offset.top, -929, "Relative: 50px move in grid");
|
||||
|
||||
var offset = $("#draggable2").data("draggable").element.offset();
|
||||
equals(offset.left, -929, "Absolute: 50px move in grid");
|
||||
equals(offset.top, -929, "Absolute: 50px move in grid");
|
||||
|
||||
|
||||
});
|
||||
|
||||
test("{ axis: 'y' }", function() {
|
||||
|
||||
expect(4);
|
||||
|
||||
$("#draggable1, #draggable2").draggable({ axis: "y" });
|
||||
|
||||
drag("#draggable1, #draggable2", 50, 50);
|
||||
|
||||
var offset = $("#draggable1").data("draggable").element.offset();
|
||||
equals(offset.left, -979, "Relative: 0px move");
|
||||
equals(offset.top, -929, "Relative: 50px move");
|
||||
|
||||
var offset = $("#draggable2").data("draggable").element.offset();
|
||||
equals(offset.left, -979, "Absolute: 0px move");
|
||||
equals(offset.top, -929, "Absolute: 50px move");
|
||||
|
||||
|
||||
});
|
||||
|
||||
test("{ axis: 'x' }", function() {
|
||||
|
||||
expect(4);
|
||||
|
||||
$("#draggable1, #draggable2").draggable({ axis: "x" });
|
||||
|
||||
drag("#draggable1, #draggable2", 50, 50);
|
||||
|
||||
var offset = $("#draggable1").data("draggable").element.offset();
|
||||
equals(offset.left, -929, "Relative: 50px move");
|
||||
equals(offset.top, -979, "Relative: 0px move");
|
||||
|
||||
var offset = $("#draggable2").data("draggable").element.offset();
|
||||
equals(offset.left, -929, "Absolute: 50px move");
|
||||
equals(offset.top, -979, "Absolute: 0px move");
|
||||
|
||||
|
||||
});
|
||||
|
||||
test("{ cancel: 'span' }", function() {
|
||||
|
||||
expect(2);
|
||||
|
||||
$("#draggable2").draggable({ cancel: 'span' });
|
||||
|
||||
drag("#draggable2 span", 50, 50);
|
||||
|
||||
var offset = $("#draggable2").data("draggable").element.offset();
|
||||
equals(offset.left, -979, "Trigger on span: 0px move");
|
||||
equals(offset.top, -979, "Trigger on span: 0px move");
|
||||
|
||||
|
||||
});
|
||||
|
||||
test("{ handle: 'span' }", function() {
|
||||
|
||||
expect(4);
|
||||
|
||||
$("#draggable2").draggable({ handle: 'span' });
|
||||
|
||||
drag("#draggable2 span", 50, 50);
|
||||
|
||||
var offset = $("#draggable2").data("draggable").element.offset();
|
||||
equals(offset.left, -929, "Trigger on span: 50px move");
|
||||
equals(offset.top, -929, "Trigger on span: 50px move");
|
||||
|
||||
drag("#draggable2", 50, 50);
|
||||
|
||||
var offset = $("#draggable2").data("draggable").element.offset();
|
||||
equals(offset.left, -929, "Trigger on element: 0px move");
|
||||
equals(offset.top, -929, "Trigger on element: 0px move");
|
||||
|
||||
|
||||
});
|
||||
|
||||
test("{ containment: 'parent' }", function() {
|
||||
|
||||
expect(4);
|
||||
|
||||
$("#draggable2, #draggable1").draggable({ containment: 'parent' });
|
||||
|
||||
drag("#draggable2, #draggable1", -100, -100);
|
||||
|
||||
var offset = $("#draggable2").data("draggable").element.offset();
|
||||
equals(offset.left, -989, "Absolute: 10px move (to parent's margin end)");
|
||||
equals(offset.top, -989, "Absolute: 10px move (to parent's margin end)");
|
||||
|
||||
var offset = $("#draggable1").data("draggable").element.offset();
|
||||
equals(offset.left, -989, "Relative: 10px move (to parent's margin end)");
|
||||
equals(offset.top, -989, "Relative: 10px move (to parent's margin end)");
|
||||
|
||||
|
||||
});
|
||||
|
||||
test("{ cursorAt: { left: -5, top: -5 } }", function() {
|
||||
|
||||
expect(4);
|
||||
|
||||
var position = null;
|
||||
$("#draggable2").draggable({
|
||||
cursorAt: { left: -5, top: -5 },
|
||||
drag: function(e, ui) {
|
||||
position = ui.absolutePosition;
|
||||
}
|
||||
});
|
||||
|
||||
drag("#draggable2", -1, -1);
|
||||
|
||||
equals(position.left, -875, "Absolute: -1px move");
|
||||
equals(position.top, -925, "Absolute: -1px move");
|
||||
|
||||
var position = null;
|
||||
$("#draggable1").draggable({
|
||||
cursorAt: { left: -5, top: -5 },
|
||||
drag: function(e, ui) {
|
||||
position = ui.absolutePosition;
|
||||
}
|
||||
});
|
||||
|
||||
drag("#draggable1", -1, -1);
|
||||
|
||||
equals(position.left, -875, "Relative: -1px move");
|
||||
equals(position.top, -925, "Relative: -1px move");
|
||||
|
||||
});
|
||||
|
||||
test("{ cursor: 'move' }", function() {
|
||||
|
||||
expect(2);
|
||||
|
||||
var cursor = null;
|
||||
$("#draggable2").draggable({
|
||||
cursor: "move",
|
||||
start: function(e, ui) {
|
||||
cursor = $("body").css("cursor");
|
||||
}
|
||||
});
|
||||
|
||||
drag("#draggable2", -1, -1);
|
||||
|
||||
equals(cursor, "move", "start callback: cursor 'move'");
|
||||
equals($("body").css("cursor"), "auto", "after drag: cursor restored");
|
||||
|
||||
});
|
||||
|
||||
test("{ distance: 10 }", function() {
|
||||
|
||||
expect(2);
|
||||
|
||||
var dragged = false;
|
||||
$("#draggable2").draggable({
|
||||
distance: 10,
|
||||
start: function(e, ui) {
|
||||
dragged = true;
|
||||
}
|
||||
});
|
||||
|
||||
drag("#draggable2", -9, -9);
|
||||
equals(dragged, false, "The draggable should not have moved when moving -9px");
|
||||
|
||||
drag("#draggable2", -10, -10);
|
||||
equals(dragged, true, "The draggable should have moved when moving -10px");
|
||||
|
||||
});
|
||||
|
||||
test("{ opacity: 0.5 }", function() {
|
||||
|
||||
expect(1);
|
||||
|
||||
var opacity = null;
|
||||
$("#draggable2").draggable({
|
||||
opacity: 0.5,
|
||||
start: function(e, ui) {
|
||||
opacity = $(this).css("opacity");
|
||||
}
|
||||
});
|
||||
|
||||
drag("#draggable2", -1, -1);
|
||||
|
||||
equals(opacity, "0.5", "start callback: opacity is 0.5");
|
||||
|
||||
});
|
||||
|
||||
test("{ zIndex: 10 }", function() {
|
||||
|
||||
expect(1);
|
||||
|
||||
var zIndex = null;
|
||||
$("#draggable2").draggable({
|
||||
zIndex: 10,
|
||||
start: function(e, ui) {
|
||||
zIndex = $(this).css("zIndex");
|
||||
}
|
||||
});
|
||||
|
||||
drag("#draggable2", -1, -1);
|
||||
|
||||
equals(zIndex, "10", "start callback: zIndex is 10");
|
||||
|
||||
});
|
||||
|
||||
test("callbacks occurance count", function() {
|
||||
|
||||
expect(3);
|
||||
|
||||
var start = 0, stop = 0, dragc = 0;
|
||||
$("#draggable2").draggable({
|
||||
start: function() { start++; },
|
||||
drag: function() { dragc++; },
|
||||
stop: function() { stop++; }
|
||||
});
|
||||
|
||||
drag("#draggable2", 10, 10);
|
||||
|
||||
equals(start, 1, "start callback should happen exactly once");
|
||||
equals(dragc, 11, "drag callback should happen exactly 1+10 times (first simultaneously with start)");
|
||||
equals(stop, 1, "stop callback should happen exactly once");
|
||||
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,32 +1,32 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Language" content="en" />
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Slider Test Page</title>
|
||||
<link rel="stylesheet" href="../../qunit/testsuite.css" type="text/css" media="screen">
|
||||
|
||||
<script type="text/javascript" src="../../jquery/jquery-1.2.6.js"></script>
|
||||
<script type="text/javascript" src="../source/ui.core.js"></script>
|
||||
<script type="text/javascript" src="../source/ui.slider.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../../qunit/testrunner.js"></script>
|
||||
<script type="text/javascript" src="slider.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h1 id="header">jQuery Test Suite</h1>
|
||||
<h2 id="banner"></h2>
|
||||
<h2 id="userAgent"></h2>
|
||||
|
||||
<div id="main" style="position:absolute;top:-20000px">
|
||||
<div id='slider1'></div>
|
||||
<div id='slider3' style="position: relative; margin: 40px; width: 217px; height: 28px; background: url(http://developer.yahoo.com/yui/examples/slider/assets/bg-fader.gif) no-repeat scroll 5px 0px;">
|
||||
<div class='ui-slider-handle' style='position: absolute; height: 21px; left: 0px; bottom: 0px; width: 17px; background-image: url(http://developer.yahoo.com/yui/examples/slider/assets/thumb-n.gif);'></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<ol id="tests"></ol>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Language" content="en" />
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Slider Test Page</title>
|
||||
<link rel="stylesheet" href="../../qunit/testsuite.css" type="text/css" media="screen">
|
||||
|
||||
<script type="text/javascript" src="../../jquery/jquery-1.2.6.js"></script>
|
||||
<script type="text/javascript" src="../source/ui.core.js"></script>
|
||||
<script type="text/javascript" src="../source/ui.slider.js"></script>
|
||||
|
||||
<script type="text/javascript" src="../../qunit/testrunner.js"></script>
|
||||
<script type="text/javascript" src="slider.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h1 id="header">jQuery Test Suite</h1>
|
||||
<h2 id="banner"></h2>
|
||||
<h2 id="userAgent"></h2>
|
||||
|
||||
<div id="main" style="position:absolute;top:-20000px">
|
||||
<div id='slider1'></div>
|
||||
<div id='slider3' style="position: relative; margin: 40px; width: 217px; height: 28px; background: url(http://developer.yahoo.com/yui/examples/slider/assets/bg-fader.gif) no-repeat scroll 5px 0px;">
|
||||
<div class='ui-slider-handle' style='position: absolute; height: 21px; left: 0px; bottom: 0px; width: 17px; background-image: url(http://developer.yahoo.com/yui/examples/slider/assets/thumb-n.gif);'></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<ol id="tests"></ol>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -1,100 +1,100 @@
|
||||
$.fn.triggerKeydown = function(keyCode) {
|
||||
return this.trigger("keydown", [$.event.fix({event:"keydown", keyCode: keyCode, target: this[0]})]);
|
||||
}
|
||||
|
||||
function assertChange(stepping, start, result, action) {
|
||||
return function() {
|
||||
expect(1);
|
||||
var slider = $("#slider3").slider({
|
||||
stepping: stepping,
|
||||
startValue: start,
|
||||
min: 0,
|
||||
max: 1000,
|
||||
change: function(e, ui) {
|
||||
equals(ui.value, result, "changed to " + ui.value);
|
||||
}
|
||||
});
|
||||
action.apply(slider);
|
||||
}
|
||||
}
|
||||
|
||||
module("slider: single handle")
|
||||
|
||||
test("change one step via keydown", assertChange(1, undefined, 1, function() {
|
||||
this.find("a").triggerKeydown("39");
|
||||
}))
|
||||
test("change - 10 steps via keydown", assertChange(10, 20, 10, function() {
|
||||
this.find("a").triggerKeydown("37");
|
||||
}))
|
||||
test("change +10 steps via keydown", assertChange(10, 20, 30, function() {
|
||||
this.find("a").triggerKeydown("39");
|
||||
}))
|
||||
|
||||
test("moveTo, absolute value", assertChange(1, 1, 10, function() {
|
||||
this.slider("moveTo", 10);
|
||||
}))
|
||||
|
||||
test("moveTo, absolute value as string", assertChange(1, 1, 10, function() {
|
||||
this.slider("moveTo", "10");
|
||||
}))
|
||||
|
||||
test("moveTo, absolute value, below min", assertChange(1, 1, 0, function() {
|
||||
this.slider("moveTo", -10);
|
||||
}))
|
||||
|
||||
test("moveTo, relative positive value", assertChange(1, 1, 11, function() {
|
||||
this.slider("moveTo", "+=10");
|
||||
}))
|
||||
|
||||
test("moveTo, relative positive value, above max", assertChange(1, 10, 1000, function() {
|
||||
this.slider("moveTo", "+=2000");
|
||||
}))
|
||||
|
||||
test("moveTo, relative negative value", assertChange(1, 20, 10, function() {
|
||||
this.slider("moveTo", "-=10");
|
||||
}))
|
||||
|
||||
test("options update min/max", function() {
|
||||
expect(2);
|
||||
var slider = $("#slider3").slider({
|
||||
stepping: 1,
|
||||
startValue: 1
|
||||
});
|
||||
slider.slider("moveTo", "-=10");
|
||||
equals(slider.slider("value"), 0);
|
||||
slider.data("min.slider", -10);
|
||||
slider.slider("moveTo", "-=20");
|
||||
equals(slider.slider("value"), -10);
|
||||
})
|
||||
|
||||
module("slider: setup and teardown");
|
||||
|
||||
test("destroy and recreate", function() {
|
||||
expect(3)
|
||||
var slider = $("#slider3").slider();
|
||||
slider.slider("moveTo", "+=20");
|
||||
equals(slider.slider("value"), 20);
|
||||
slider.slider("destroy");
|
||||
|
||||
slider.slider("moveTo", "+=30");
|
||||
ok(true, "nothing happens after slider is destroyed");
|
||||
|
||||
slider.slider().slider("moveTo", "30");
|
||||
|
||||
equals(Math.round(slider.slider("value")), 30);
|
||||
})
|
||||
|
||||
test("handle creation", function() {
|
||||
var slider = $("#slider1");
|
||||
equals(slider.children().size(), 0);
|
||||
slider.slider({
|
||||
handles: [
|
||||
{ start: 0 },
|
||||
{ start: 10 }
|
||||
]
|
||||
});
|
||||
equals(slider.children().size(), 2);
|
||||
var instance = $.data(slider[0], "slider")
|
||||
equals(instance.handle.length, 2);
|
||||
ok(instance.handle.jquery, "handle must be a jquery object")
|
||||
$.fn.triggerKeydown = function(keyCode) {
|
||||
return this.trigger("keydown", [$.event.fix({event:"keydown", keyCode: keyCode, target: this[0]})]);
|
||||
}
|
||||
|
||||
function assertChange(stepping, start, result, action) {
|
||||
return function() {
|
||||
expect(1);
|
||||
var slider = $("#slider3").slider({
|
||||
stepping: stepping,
|
||||
startValue: start,
|
||||
min: 0,
|
||||
max: 1000,
|
||||
change: function(e, ui) {
|
||||
equals(ui.value, result, "changed to " + ui.value);
|
||||
}
|
||||
});
|
||||
action.apply(slider);
|
||||
}
|
||||
}
|
||||
|
||||
module("slider: single handle")
|
||||
|
||||
test("change one step via keydown", assertChange(1, undefined, 1, function() {
|
||||
this.find("a").triggerKeydown("39");
|
||||
}))
|
||||
test("change - 10 steps via keydown", assertChange(10, 20, 10, function() {
|
||||
this.find("a").triggerKeydown("37");
|
||||
}))
|
||||
test("change +10 steps via keydown", assertChange(10, 20, 30, function() {
|
||||
this.find("a").triggerKeydown("39");
|
||||
}))
|
||||
|
||||
test("moveTo, absolute value", assertChange(1, 1, 10, function() {
|
||||
this.slider("moveTo", 10);
|
||||
}))
|
||||
|
||||
test("moveTo, absolute value as string", assertChange(1, 1, 10, function() {
|
||||
this.slider("moveTo", "10");
|
||||
}))
|
||||
|
||||
test("moveTo, absolute value, below min", assertChange(1, 1, 0, function() {
|
||||
this.slider("moveTo", -10);
|
||||
}))
|
||||
|
||||
test("moveTo, relative positive value", assertChange(1, 1, 11, function() {
|
||||
this.slider("moveTo", "+=10");
|
||||
}))
|
||||
|
||||
test("moveTo, relative positive value, above max", assertChange(1, 10, 1000, function() {
|
||||
this.slider("moveTo", "+=2000");
|
||||
}))
|
||||
|
||||
test("moveTo, relative negative value", assertChange(1, 20, 10, function() {
|
||||
this.slider("moveTo", "-=10");
|
||||
}))
|
||||
|
||||
test("options update min/max", function() {
|
||||
expect(2);
|
||||
var slider = $("#slider3").slider({
|
||||
stepping: 1,
|
||||
startValue: 1
|
||||
});
|
||||
slider.slider("moveTo", "-=10");
|
||||
equals(slider.slider("value"), 0);
|
||||
slider.data("min.slider", -10);
|
||||
slider.slider("moveTo", "-=20");
|
||||
equals(slider.slider("value"), -10);
|
||||
})
|
||||
|
||||
module("slider: setup and teardown");
|
||||
|
||||
test("destroy and recreate", function() {
|
||||
expect(3)
|
||||
var slider = $("#slider3").slider();
|
||||
slider.slider("moveTo", "+=20");
|
||||
equals(slider.slider("value"), 20);
|
||||
slider.slider("destroy");
|
||||
|
||||
slider.slider("moveTo", "+=30");
|
||||
ok(true, "nothing happens after slider is destroyed");
|
||||
|
||||
slider.slider().slider("moveTo", "30");
|
||||
|
||||
equals(Math.round(slider.slider("value")), 30);
|
||||
})
|
||||
|
||||
test("handle creation", function() {
|
||||
var slider = $("#slider1");
|
||||
equals(slider.children().size(), 0);
|
||||
slider.slider({
|
||||
handles: [
|
||||
{ start: 0 },
|
||||
{ start: 10 }
|
||||
]
|
||||
});
|
||||
equals(slider.children().size(), 2);
|
||||
var instance = $.data(slider[0], "slider")
|
||||
equals(instance.handle.length, 2);
|
||||
ok(instance.handle.jquery, "handle must be a jquery object")
|
||||
})
|
||||
@@ -1,171 +1,171 @@
|
||||
/*
|
||||
* jQuery UI testMouse
|
||||
*
|
||||
* Copyright (c) 2008 Richard D. Worth (rdworth.org)
|
||||
* Dual licensed under the MIT (MIT-LICENSE.txt)
|
||||
* and GPL (GPL-LICENSE.txt) licenses.
|
||||
*
|
||||
* Revision: $Id: $
|
||||
*/
|
||||
;(function($) {
|
||||
|
||||
var mouseX = 0;
|
||||
var mouseY = 0;
|
||||
|
||||
$(function() {
|
||||
$(document).mousemove(function(e) {
|
||||
if (e.isTrusted !== false) {
|
||||
mouseX = e.pageX;
|
||||
mouseY = e.pageY;
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
$.widget("ui.testMouse", {
|
||||
trackMouse: function() {},
|
||||
init: function() {
|
||||
},
|
||||
destroy: function() {
|
||||
},
|
||||
center: function(offset) {
|
||||
var o = this.element.offset();
|
||||
return {
|
||||
x: (o.left + (offset || [0, 0])[0] || 0) + this.element.width() / 2,
|
||||
y: (o.top + (offset || [0, 0])[1] || 0) + this.element.height() / 2
|
||||
};
|
||||
},
|
||||
dispatch: function(type, x, y, button, relatedTarget) {
|
||||
var evt, e = {bubbles: true, cancelable: (type != "mousemove"), view: window, detail: 0,
|
||||
screenX: 0, screenY: 0, clientX: x, clientY: y,
|
||||
ctrlKey: false, altKey: false, shiftKey: false, metaKey: false,
|
||||
button: button || 0, relatedTarget: relatedTarget, isTrusted: false};
|
||||
if ($.isFunction(document.createEvent)) {
|
||||
evt = document.createEvent("MouseEvents");
|
||||
if ($.isFunction(evt.initMouseEvent)) {
|
||||
evt.initMouseEvent(type, e.bubbles, e.cancelable, e.view, e.detail,
|
||||
e.screenX, e.screenY, e.clientX, e.clientY,
|
||||
e.ctrlKey, e.altKey, e.shiftKey, e.metaKey,
|
||||
e.button, e.relatedTarget);
|
||||
} else {
|
||||
evt = document.createEvent("UIEvents");
|
||||
evt.initEvent(type, bubbles, cancelable);
|
||||
$.extend(evt, e);
|
||||
}
|
||||
this.element[0].dispatchEvent(evt);
|
||||
} else if (document.createEventObject) {
|
||||
evt = document.createEventObject();
|
||||
$.extend(evt, e);
|
||||
evt.button = 1;
|
||||
this.element[0].fireEvent('on' + type, evt)
|
||||
}
|
||||
},
|
||||
down: function(x, y) {
|
||||
this.dispatch("mousedown", x, y);
|
||||
},
|
||||
move: function(x, y) {
|
||||
this.dispatch("mousemove", x, y);
|
||||
},
|
||||
up: function(x, y) {
|
||||
this.dispatch("mouseup", x, y);
|
||||
},
|
||||
drag: function(dx, dy) {
|
||||
var self = this;
|
||||
|
||||
var center = this.center();
|
||||
this.left = center.x;
|
||||
this.top = center.y;
|
||||
|
||||
var OS = (/(win|mac|linux)/i.exec(navigator.platform) || ['other'])[0].toLowerCase();
|
||||
|
||||
var defaultUrl = ['cursors', OS == 'other' ? 'win' : OS, 'default.png'].join('/');
|
||||
var cursorUrl = function() {
|
||||
return ['cursors', OS == 'other' ? 'win' : OS, self.element.css('cursor') + '.png'].join('/');
|
||||
}
|
||||
var noneUrl = ['cursors', OS == 'other' ? 'win' : OS, 'none' + ($.browser.safari ? '.png' : '.cur')].join('/');
|
||||
|
||||
var fakemouse = $('<img src="' + defaultUrl + '" />');
|
||||
var realmouse = $('<img src="' + defaultUrl + '" />');
|
||||
if ($.browser.msie && $.browser.version == 6) {
|
||||
fakemouse = $('<div style="height:32;width:32;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'' + defaultUrl + '\', sizingMethod=\'scale\');" ></div>');
|
||||
realmouse = $('<div><div style="height:32;width:32;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'' + defaultUrl + '\', sizingMethod=\'scale\');" ></div></div>');
|
||||
}
|
||||
var mousescreen = $('<div/>');
|
||||
|
||||
var updateCursor = function() {
|
||||
if ($.browser.msie && $.browser.version == 6) {
|
||||
fakemouse.css('filter', 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'' + cursorUrl() + '\', sizingMethod=\'scale\'');
|
||||
} else {
|
||||
fakemouse.attr('src', cursorUrl());
|
||||
}
|
||||
}
|
||||
var resetCursor = function() {
|
||||
if ($.browser.msie && $.browser.version == 6) {
|
||||
fakemouse.css('filter', 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'' + defaultUrl + '\', sizingMethod=\'scale\'');
|
||||
} else {
|
||||
fakemouse.attr('src', defaultUrl);
|
||||
}
|
||||
}
|
||||
|
||||
var testStart = function() {
|
||||
self.element.bind("mouseover", updateCursor).bind("mouseout", resetCursor);
|
||||
fakemouse.appendTo('body').css({ position: 'absolute', left: mouseX, top: mouseY, zIndex: 5000 });
|
||||
realmouse.appendTo('body').css({ position: 'absolute', left: mouseX, top: mouseY, zIndex: 5000, opacity: 0.1 });
|
||||
mousescreen.appendTo('body').css({ width: '100%', height: '100%', position: 'absolute', top: 0, left: 0, zIndex: 5000 })
|
||||
.mousemove(function(e) { realmouse.css({ left: e.pageX, top: e.pageY }); return false; })
|
||||
.mousedown(function() { return false; })
|
||||
.mouseup(function() { return false; });
|
||||
mousescreen.css('cursor', 'url(' + noneUrl + '), crosshair');
|
||||
($.browser.opera && mousescreen.css('cursor', 'crosshair'));
|
||||
}
|
||||
var testStop = function() {
|
||||
self.element.unbind("mouseover", updateCursor).unbind("mouseout", resetCursor);
|
||||
mousescreen.remove();
|
||||
mouseX = realmouse.css("left");
|
||||
mouseY = realmouse.css("top");
|
||||
realmouse.remove();
|
||||
fakemouse.remove();
|
||||
self.options.complete.apply();
|
||||
}
|
||||
|
||||
testStart();
|
||||
|
||||
this.lastX = null;
|
||||
|
||||
fakemouse
|
||||
.animate({ left: this.left, top: this.top }, this.options.speed, function() {
|
||||
self.element.triggerHandler('mouseover');
|
||||
self.down(self.left, self.top);
|
||||
self.move(self.left, self.top);
|
||||
})
|
||||
.animate({ left: this.left + dx, top: this.top + dy }, {
|
||||
speed: self.options.speed,
|
||||
easing: "swing",
|
||||
step: function (xory) {
|
||||
if (!self.lastX) {
|
||||
self.lastX = xory;
|
||||
} else {
|
||||
var x = self.lastX, y = xory;
|
||||
self.move(x, y);
|
||||
self.lastX = null;
|
||||
}
|
||||
},
|
||||
complete: function() {
|
||||
self.element.triggerHandler('mouseout');
|
||||
self.up(0, 0);
|
||||
$(this).animate({ left: realmouse.css("left"), top: realmouse.css("top") }, {
|
||||
speed: self.options.speed,
|
||||
complete: function() {
|
||||
testStop();
|
||||
}
|
||||
})
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
$.ui.testMouse.defaults = {
|
||||
speed: "slow"
|
||||
}
|
||||
|
||||
})(jQuery);
|
||||
/*
|
||||
* jQuery UI testMouse
|
||||
*
|
||||
* Copyright (c) 2008 Richard D. Worth (rdworth.org)
|
||||
* Dual licensed under the MIT (MIT-LICENSE.txt)
|
||||
* and GPL (GPL-LICENSE.txt) licenses.
|
||||
*
|
||||
* Revision: $Id: $
|
||||
*/
|
||||
;(function($) {
|
||||
|
||||
var mouseX = 0;
|
||||
var mouseY = 0;
|
||||
|
||||
$(function() {
|
||||
$(document).mousemove(function(e) {
|
||||
if (e.isTrusted !== false) {
|
||||
mouseX = e.pageX;
|
||||
mouseY = e.pageY;
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
$.widget("ui.testMouse", {
|
||||
trackMouse: function() {},
|
||||
init: function() {
|
||||
},
|
||||
destroy: function() {
|
||||
},
|
||||
center: function(offset) {
|
||||
var o = this.element.offset();
|
||||
return {
|
||||
x: (o.left + (offset || [0, 0])[0] || 0) + this.element.width() / 2,
|
||||
y: (o.top + (offset || [0, 0])[1] || 0) + this.element.height() / 2
|
||||
};
|
||||
},
|
||||
dispatch: function(type, x, y, button, relatedTarget) {
|
||||
var evt, e = {bubbles: true, cancelable: (type != "mousemove"), view: window, detail: 0,
|
||||
screenX: 0, screenY: 0, clientX: x, clientY: y,
|
||||
ctrlKey: false, altKey: false, shiftKey: false, metaKey: false,
|
||||
button: button || 0, relatedTarget: relatedTarget, isTrusted: false};
|
||||
if ($.isFunction(document.createEvent)) {
|
||||
evt = document.createEvent("MouseEvents");
|
||||
if ($.isFunction(evt.initMouseEvent)) {
|
||||
evt.initMouseEvent(type, e.bubbles, e.cancelable, e.view, e.detail,
|
||||
e.screenX, e.screenY, e.clientX, e.clientY,
|
||||
e.ctrlKey, e.altKey, e.shiftKey, e.metaKey,
|
||||
e.button, e.relatedTarget);
|
||||
} else {
|
||||
evt = document.createEvent("UIEvents");
|
||||
evt.initEvent(type, bubbles, cancelable);
|
||||
$.extend(evt, e);
|
||||
}
|
||||
this.element[0].dispatchEvent(evt);
|
||||
} else if (document.createEventObject) {
|
||||
evt = document.createEventObject();
|
||||
$.extend(evt, e);
|
||||
evt.button = 1;
|
||||
this.element[0].fireEvent('on' + type, evt)
|
||||
}
|
||||
},
|
||||
down: function(x, y) {
|
||||
this.dispatch("mousedown", x, y);
|
||||
},
|
||||
move: function(x, y) {
|
||||
this.dispatch("mousemove", x, y);
|
||||
},
|
||||
up: function(x, y) {
|
||||
this.dispatch("mouseup", x, y);
|
||||
},
|
||||
drag: function(dx, dy) {
|
||||
var self = this;
|
||||
|
||||
var center = this.center();
|
||||
this.left = center.x;
|
||||
this.top = center.y;
|
||||
|
||||
var OS = (/(win|mac|linux)/i.exec(navigator.platform) || ['other'])[0].toLowerCase();
|
||||
|
||||
var defaultUrl = ['cursors', OS == 'other' ? 'win' : OS, 'default.png'].join('/');
|
||||
var cursorUrl = function() {
|
||||
return ['cursors', OS == 'other' ? 'win' : OS, self.element.css('cursor') + '.png'].join('/');
|
||||
}
|
||||
var noneUrl = ['cursors', OS == 'other' ? 'win' : OS, 'none' + ($.browser.safari ? '.png' : '.cur')].join('/');
|
||||
|
||||
var fakemouse = $('<img src="' + defaultUrl + '" />');
|
||||
var realmouse = $('<img src="' + defaultUrl + '" />');
|
||||
if ($.browser.msie && $.browser.version == 6) {
|
||||
fakemouse = $('<div style="height:32;width:32;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'' + defaultUrl + '\', sizingMethod=\'scale\');" ></div>');
|
||||
realmouse = $('<div><div style="height:32;width:32;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'' + defaultUrl + '\', sizingMethod=\'scale\');" ></div></div>');
|
||||
}
|
||||
var mousescreen = $('<div/>');
|
||||
|
||||
var updateCursor = function() {
|
||||
if ($.browser.msie && $.browser.version == 6) {
|
||||
fakemouse.css('filter', 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'' + cursorUrl() + '\', sizingMethod=\'scale\'');
|
||||
} else {
|
||||
fakemouse.attr('src', cursorUrl());
|
||||
}
|
||||
}
|
||||
var resetCursor = function() {
|
||||
if ($.browser.msie && $.browser.version == 6) {
|
||||
fakemouse.css('filter', 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'' + defaultUrl + '\', sizingMethod=\'scale\'');
|
||||
} else {
|
||||
fakemouse.attr('src', defaultUrl);
|
||||
}
|
||||
}
|
||||
|
||||
var testStart = function() {
|
||||
self.element.bind("mouseover", updateCursor).bind("mouseout", resetCursor);
|
||||
fakemouse.appendTo('body').css({ position: 'absolute', left: mouseX, top: mouseY, zIndex: 5000 });
|
||||
realmouse.appendTo('body').css({ position: 'absolute', left: mouseX, top: mouseY, zIndex: 5000, opacity: 0.1 });
|
||||
mousescreen.appendTo('body').css({ width: '100%', height: '100%', position: 'absolute', top: 0, left: 0, zIndex: 5000 })
|
||||
.mousemove(function(e) { realmouse.css({ left: e.pageX, top: e.pageY }); return false; })
|
||||
.mousedown(function() { return false; })
|
||||
.mouseup(function() { return false; });
|
||||
mousescreen.css('cursor', 'url(' + noneUrl + '), crosshair');
|
||||
($.browser.opera && mousescreen.css('cursor', 'crosshair'));
|
||||
}
|
||||
var testStop = function() {
|
||||
self.element.unbind("mouseover", updateCursor).unbind("mouseout", resetCursor);
|
||||
mousescreen.remove();
|
||||
mouseX = realmouse.css("left");
|
||||
mouseY = realmouse.css("top");
|
||||
realmouse.remove();
|
||||
fakemouse.remove();
|
||||
self.options.complete.apply();
|
||||
}
|
||||
|
||||
testStart();
|
||||
|
||||
this.lastX = null;
|
||||
|
||||
fakemouse
|
||||
.animate({ left: this.left, top: this.top }, this.options.speed, function() {
|
||||
self.element.triggerHandler('mouseover');
|
||||
self.down(self.left, self.top);
|
||||
self.move(self.left, self.top);
|
||||
})
|
||||
.animate({ left: this.left + dx, top: this.top + dy }, {
|
||||
speed: self.options.speed,
|
||||
easing: "swing",
|
||||
step: function (xory) {
|
||||
if (!self.lastX) {
|
||||
self.lastX = xory;
|
||||
} else {
|
||||
var x = self.lastX, y = xory;
|
||||
self.move(x, y);
|
||||
self.lastX = null;
|
||||
}
|
||||
},
|
||||
complete: function() {
|
||||
self.element.triggerHandler('mouseout');
|
||||
self.up(0, 0);
|
||||
$(this).animate({ left: realmouse.css("left"), top: realmouse.css("top") }, {
|
||||
speed: self.options.speed,
|
||||
complete: function() {
|
||||
testStop();
|
||||
}
|
||||
})
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
$.ui.testMouse.defaults = {
|
||||
speed: "slow"
|
||||
}
|
||||
|
||||
})(jQuery);
|
||||
|
||||
@@ -1,39 +1,39 @@
|
||||
.ui-accordion { margin: 0; padding: 0; list-style-type: none; }
|
||||
.ui-accordion li { margin: 0; margin-bottom: 2px; padding: 0; }
|
||||
.ui-accordion li .ui-accordion-header {
|
||||
display: block;
|
||||
padding-left: 5px;
|
||||
margin-right: 3px;
|
||||
height: 28px;
|
||||
background-image: url(i/accordion-middle.png);
|
||||
color: #000;
|
||||
text-decoration: none;
|
||||
line-height: 28px;
|
||||
position: relative;
|
||||
left: 3px;
|
||||
}
|
||||
.ui-accordion li .ui-accordion-right {
|
||||
display: block;
|
||||
background-image: url(i/accordion-right.png);
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
right: -3px;
|
||||
height: 28px;
|
||||
width: 3px;
|
||||
}
|
||||
.ui-accordion li .ui-accordion-left {
|
||||
display: block;
|
||||
background-image: url(i/accordion-left.png);
|
||||
background-repeat: no-repeat;
|
||||
position: absolute;
|
||||
height: 28px;
|
||||
width: 3px;
|
||||
}
|
||||
|
||||
.ui-accordion li:hover .ui-accordion-left { background-image: url(i/accordion-left-over.png); }
|
||||
.ui-accordion li:hover .ui-accordion-header { background-image: url(i/accordion-middle-over.png); }
|
||||
.ui-accordion li:hover .ui-accordion-right { background-image: url(i/accordion-right-over.png); }
|
||||
|
||||
.ui-accordion li.selected .ui-accordion-left { background-image: url(i/accordion-left-act.png); }
|
||||
.ui-accordion li.selected .ui-accordion-header { background-image: url(i/accordion-middle-act.png); }
|
||||
.ui-accordion li.selected .ui-accordion-right { background-image: url(i/accordion-right-act.png); }
|
||||
.ui-accordion { margin: 0; padding: 0; list-style-type: none; }
|
||||
.ui-accordion li { margin: 0; margin-bottom: 2px; padding: 0; }
|
||||
.ui-accordion li .ui-accordion-header {
|
||||
display: block;
|
||||
padding-left: 5px;
|
||||
margin-right: 3px;
|
||||
height: 28px;
|
||||
background-image: url(i/accordion-middle.png);
|
||||
color: #000;
|
||||
text-decoration: none;
|
||||
line-height: 28px;
|
||||
position: relative;
|
||||
left: 3px;
|
||||
}
|
||||
.ui-accordion li .ui-accordion-right {
|
||||
display: block;
|
||||
background-image: url(i/accordion-right.png);
|
||||
position: absolute;
|
||||
top: 0px;
|
||||
right: -3px;
|
||||
height: 28px;
|
||||
width: 3px;
|
||||
}
|
||||
.ui-accordion li .ui-accordion-left {
|
||||
display: block;
|
||||
background-image: url(i/accordion-left.png);
|
||||
background-repeat: no-repeat;
|
||||
position: absolute;
|
||||
height: 28px;
|
||||
width: 3px;
|
||||
}
|
||||
|
||||
.ui-accordion li:hover .ui-accordion-left { background-image: url(i/accordion-left-over.png); }
|
||||
.ui-accordion li:hover .ui-accordion-header { background-image: url(i/accordion-middle-over.png); }
|
||||
.ui-accordion li:hover .ui-accordion-right { background-image: url(i/accordion-right-over.png); }
|
||||
|
||||
.ui-accordion li.selected .ui-accordion-left { background-image: url(i/accordion-left-act.png); }
|
||||
.ui-accordion li.selected .ui-accordion-header { background-image: url(i/accordion-middle-act.png); }
|
||||
.ui-accordion li.selected .ui-accordion-right { background-image: url(i/accordion-right-act.png); }
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
@import "flora.css";
|
||||
@import "flora.accordion.css";
|
||||
@import "flora.datepicker.css";
|
||||
@import "flora.dialog.css";
|
||||
@import "flora.resizable.css";
|
||||
@import "flora.slider.css";
|
||||
@import "flora.tabs.css";
|
||||
@import "flora.css";
|
||||
@import "flora.accordion.css";
|
||||
@import "flora.datepicker.css";
|
||||
@import "flora.dialog.css";
|
||||
@import "flora.resizable.css";
|
||||
@import "flora.slider.css";
|
||||
@import "flora.tabs.css";
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
.ui-wrapper { border: 1px solid #50A029; }
|
||||
.ui-wrapper { border: 1px solid #50A029; }
|
||||
.ui-wrapper input, .ui-wrapper textarea { border: 0; }
|
||||
@@ -1,95 +1,95 @@
|
||||
/* This file skins dialog */
|
||||
|
||||
.flora .ui-dialog,
|
||||
.flora.ui-dialog {
|
||||
background-color: #e6f7d4;
|
||||
}
|
||||
|
||||
.flora .ui-dialog .ui-dialog-titlebar,
|
||||
.flora.ui-dialog .ui-dialog-titlebar {
|
||||
border-bottom: 1px solid #d8d2aa;
|
||||
background: #ff9900 url(i/dialog-title.gif) repeat-x;
|
||||
padding: 0px;
|
||||
height: 28px;
|
||||
_height: 29px;
|
||||
}
|
||||
|
||||
.flora .ui-dialog.ui-draggable .ui-dialog-titlebar,
|
||||
.flora.ui-dialog.ui-draggable .ui-dialog-titlebar {
|
||||
cursor: move;
|
||||
}
|
||||
|
||||
.flora .ui-dialog .ui-dialog-titlebar-close,
|
||||
.flora.ui-dialog .ui-dialog-titlebar-close {
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
background: url(i/dialog-titlebar-close.png) no-repeat;
|
||||
position:absolute;
|
||||
top: 6px;
|
||||
right: 7px;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.flora .ui-dialog .ui-dialog-titlebar-close span,
|
||||
.flora.ui-dialog .ui-dialog-titlebar-close span {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.flora .ui-dialog .ui-dialog-titlebar-close-hover,
|
||||
.flora.ui-dialog .ui-dialog-titlebar-close-hover {
|
||||
background: url(i/dialog-titlebar-close-hover.png) no-repeat;
|
||||
}
|
||||
|
||||
.flora .ui-dialog .ui-dialog-title,
|
||||
.flora.ui-dialog .ui-dialog-title {
|
||||
margin-left: 5px;
|
||||
color: white;
|
||||
font-weight: bold;
|
||||
position: relative;
|
||||
top: 7px;
|
||||
left: 4px;
|
||||
}
|
||||
|
||||
.flora .ui-dialog .ui-dialog-content,
|
||||
.flora.ui-dialog .ui-dialog-content {
|
||||
margin: 1.2em;
|
||||
}
|
||||
|
||||
.flora .ui-dialog .ui-dialog-buttonpane,
|
||||
.flora.ui-dialog .ui-dialog-buttonpane {
|
||||
position: absolute;
|
||||
bottom: 8px;
|
||||
right: 12px;
|
||||
width: 100%;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.flora .ui-dialog .ui-dialog-buttonpane button,
|
||||
.flora.ui-dialog .ui-dialog-buttonpane button {
|
||||
margin: 6px;
|
||||
}
|
||||
|
||||
/* Dialog handle styles */
|
||||
.flora .ui-dialog .ui-resizable-n,
|
||||
.flora.ui-dialog .ui-resizable-n { cursor: n-resize; height: 6px; width: 100%; top: 0px; left: 0px; background: transparent url(i/dialog-n.gif) repeat scroll center top; }
|
||||
|
||||
.flora .ui-dialog .ui-resizable-s,
|
||||
.flora.ui-dialog .ui-resizable-s { cursor: s-resize; height: 8px; width: 100%; bottom: 0px; left: 0px; background: transparent url(i/dialog-s.gif) repeat scroll center top; }
|
||||
|
||||
.flora .ui-dialog .ui-resizable-e,
|
||||
.flora.ui-dialog .ui-resizable-e { cursor: e-resize; width: 7px; right: 0px; top: 0px; height: 100%; background: transparent url(i/dialog-e.gif) repeat scroll right center; }
|
||||
|
||||
.flora .ui-dialog .ui-resizable-w,
|
||||
.flora.ui-dialog .ui-resizable-w { cursor: w-resize; width: 7px; left: 0px; top: 0px; height: 100%; background: transparent url(i/dialog-w.gif) repeat scroll right center; }
|
||||
|
||||
.flora .ui-dialog .ui-resizable-se,
|
||||
.flora.ui-dialog .ui-resizable-se { cursor: se-resize; width: 9px; height: 9px; right: 0px; bottom: 0px; background: transparent url(i/dialog-se.gif); }
|
||||
|
||||
.flora .ui-dialog .ui-resizable-sw,
|
||||
.flora.ui-dialog .ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: 0px; bottom: 0px; background: transparent url(i/dialog-sw.gif); }
|
||||
|
||||
.flora .ui-dialog .ui-resizable-nw,
|
||||
.flora.ui-dialog .ui-resizable-nw { cursor: nw-resize; width: 9px; height: 29px; left: 0px; top: 0px; background: transparent url(i/dialog-nw.gif); }
|
||||
|
||||
.flora .ui-dialog .ui-resizable-ne,
|
||||
.flora.ui-dialog .ui-resizable-ne { cursor: ne-resize; width: 9px; height: 29px; right: 0px; top: 0px; background: transparent url(i/dialog-ne.gif); }
|
||||
/* This file skins dialog */
|
||||
|
||||
.flora .ui-dialog,
|
||||
.flora.ui-dialog {
|
||||
background-color: #e6f7d4;
|
||||
}
|
||||
|
||||
.flora .ui-dialog .ui-dialog-titlebar,
|
||||
.flora.ui-dialog .ui-dialog-titlebar {
|
||||
border-bottom: 1px solid #d8d2aa;
|
||||
background: #ff9900 url(i/dialog-title.gif) repeat-x;
|
||||
padding: 0px;
|
||||
height: 28px;
|
||||
_height: 29px;
|
||||
}
|
||||
|
||||
.flora .ui-dialog.ui-draggable .ui-dialog-titlebar,
|
||||
.flora.ui-dialog.ui-draggable .ui-dialog-titlebar {
|
||||
cursor: move;
|
||||
}
|
||||
|
||||
.flora .ui-dialog .ui-dialog-titlebar-close,
|
||||
.flora.ui-dialog .ui-dialog-titlebar-close {
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
background: url(i/dialog-titlebar-close.png) no-repeat;
|
||||
position:absolute;
|
||||
top: 6px;
|
||||
right: 7px;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.flora .ui-dialog .ui-dialog-titlebar-close span,
|
||||
.flora.ui-dialog .ui-dialog-titlebar-close span {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.flora .ui-dialog .ui-dialog-titlebar-close-hover,
|
||||
.flora.ui-dialog .ui-dialog-titlebar-close-hover {
|
||||
background: url(i/dialog-titlebar-close-hover.png) no-repeat;
|
||||
}
|
||||
|
||||
.flora .ui-dialog .ui-dialog-title,
|
||||
.flora.ui-dialog .ui-dialog-title {
|
||||
margin-left: 5px;
|
||||
color: white;
|
||||
font-weight: bold;
|
||||
position: relative;
|
||||
top: 7px;
|
||||
left: 4px;
|
||||
}
|
||||
|
||||
.flora .ui-dialog .ui-dialog-content,
|
||||
.flora.ui-dialog .ui-dialog-content {
|
||||
margin: 1.2em;
|
||||
}
|
||||
|
||||
.flora .ui-dialog .ui-dialog-buttonpane,
|
||||
.flora.ui-dialog .ui-dialog-buttonpane {
|
||||
position: absolute;
|
||||
bottom: 8px;
|
||||
right: 12px;
|
||||
width: 100%;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.flora .ui-dialog .ui-dialog-buttonpane button,
|
||||
.flora.ui-dialog .ui-dialog-buttonpane button {
|
||||
margin: 6px;
|
||||
}
|
||||
|
||||
/* Dialog handle styles */
|
||||
.flora .ui-dialog .ui-resizable-n,
|
||||
.flora.ui-dialog .ui-resizable-n { cursor: n-resize; height: 6px; width: 100%; top: 0px; left: 0px; background: transparent url(i/dialog-n.gif) repeat scroll center top; }
|
||||
|
||||
.flora .ui-dialog .ui-resizable-s,
|
||||
.flora.ui-dialog .ui-resizable-s { cursor: s-resize; height: 8px; width: 100%; bottom: 0px; left: 0px; background: transparent url(i/dialog-s.gif) repeat scroll center top; }
|
||||
|
||||
.flora .ui-dialog .ui-resizable-e,
|
||||
.flora.ui-dialog .ui-resizable-e { cursor: e-resize; width: 7px; right: 0px; top: 0px; height: 100%; background: transparent url(i/dialog-e.gif) repeat scroll right center; }
|
||||
|
||||
.flora .ui-dialog .ui-resizable-w,
|
||||
.flora.ui-dialog .ui-resizable-w { cursor: w-resize; width: 7px; left: 0px; top: 0px; height: 100%; background: transparent url(i/dialog-w.gif) repeat scroll right center; }
|
||||
|
||||
.flora .ui-dialog .ui-resizable-se,
|
||||
.flora.ui-dialog .ui-resizable-se { cursor: se-resize; width: 9px; height: 9px; right: 0px; bottom: 0px; background: transparent url(i/dialog-se.gif); }
|
||||
|
||||
.flora .ui-dialog .ui-resizable-sw,
|
||||
.flora.ui-dialog .ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: 0px; bottom: 0px; background: transparent url(i/dialog-sw.gif); }
|
||||
|
||||
.flora .ui-dialog .ui-resizable-nw,
|
||||
.flora.ui-dialog .ui-resizable-nw { cursor: nw-resize; width: 9px; height: 29px; left: 0px; top: 0px; background: transparent url(i/dialog-nw.gif); }
|
||||
|
||||
.flora .ui-dialog .ui-resizable-ne,
|
||||
.flora.ui-dialog .ui-resizable-ne { cursor: ne-resize; width: 9px; height: 29px; right: 0px; top: 0px; background: transparent url(i/dialog-ne.gif); }
|
||||
|
||||
@@ -1,20 +1,20 @@
|
||||
/* This file skins resizables */
|
||||
|
||||
.ui-resizable { position: relative; }
|
||||
|
||||
/* Global handle styles */
|
||||
.ui-resizable-handle { position: absolute; display: none; font-size: 0.1px; }
|
||||
.ui-resizable .ui-resizable-handle { display: block; }
|
||||
body .ui-resizable-disabled .ui-resizable-handle { display: none; } /* use 'body' to make it more specific (css order) */
|
||||
body .ui-resizable-autohide .ui-resizable-handle { display: none; } /* use 'body' to make it more specific (css order) */
|
||||
|
||||
.ui-resizable-n { cursor: n-resize; height: 6px; width: 100%; top: 0px; left: 0px; background: transparent url(i/resizable-n.gif) repeat scroll center top; }
|
||||
.ui-resizable-s { cursor: s-resize; height: 6px; width: 100%; bottom: 0px; left: 0px; background: transparent url(i/resizable-s.gif) repeat scroll center top; }
|
||||
|
||||
.ui-resizable-e { cursor: e-resize; width: 6px; right: 0px; top: 0px; height: 100%; background: transparent url(i/resizable-e.gif) repeat scroll right center; }
|
||||
.ui-resizable-w { cursor: w-resize; width: 6px; left: 0px; top: 0px; height: 100%; background: transparent url(i/resizable-w.gif) repeat scroll right center; }
|
||||
|
||||
.ui-resizable-se { cursor: se-resize; width: 9px; height: 9px; right: 0px; bottom: 0px; background: transparent url(i/resizable-se.gif); }
|
||||
.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: 0px; bottom: 0px; background: transparent url(i/resizable-sw.gif); }
|
||||
.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: 0px; top: 0px; background: transparent url(i/resizable-nw.gif); }
|
||||
/* This file skins resizables */
|
||||
|
||||
.ui-resizable { position: relative; }
|
||||
|
||||
/* Global handle styles */
|
||||
.ui-resizable-handle { position: absolute; display: none; font-size: 0.1px; }
|
||||
.ui-resizable .ui-resizable-handle { display: block; }
|
||||
body .ui-resizable-disabled .ui-resizable-handle { display: none; } /* use 'body' to make it more specific (css order) */
|
||||
body .ui-resizable-autohide .ui-resizable-handle { display: none; } /* use 'body' to make it more specific (css order) */
|
||||
|
||||
.ui-resizable-n { cursor: n-resize; height: 6px; width: 100%; top: 0px; left: 0px; background: transparent url(i/resizable-n.gif) repeat scroll center top; }
|
||||
.ui-resizable-s { cursor: s-resize; height: 6px; width: 100%; bottom: 0px; left: 0px; background: transparent url(i/resizable-s.gif) repeat scroll center top; }
|
||||
|
||||
.ui-resizable-e { cursor: e-resize; width: 6px; right: 0px; top: 0px; height: 100%; background: transparent url(i/resizable-e.gif) repeat scroll right center; }
|
||||
.ui-resizable-w { cursor: w-resize; width: 6px; left: 0px; top: 0px; height: 100%; background: transparent url(i/resizable-w.gif) repeat scroll right center; }
|
||||
|
||||
.ui-resizable-se { cursor: se-resize; width: 9px; height: 9px; right: 0px; bottom: 0px; background: transparent url(i/resizable-se.gif); }
|
||||
.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: 0px; bottom: 0px; background: transparent url(i/resizable-sw.gif); }
|
||||
.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: 0px; top: 0px; background: transparent url(i/resizable-nw.gif); }
|
||||
.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: 0px; top: 0px; background: transparent url(i/resizable-ne.gif); }
|
||||
@@ -1,11 +1,11 @@
|
||||
/* This file skins sliders */
|
||||
|
||||
.ui-slider { width: 200px; height: 23px; position: relative; background-repeat: no-repeat; background-position: center center; }
|
||||
.ui-slider-handle { position: absolute; z-index: 1; height: 23px; width: 12px; top: 0px; left: 0px; background-image: url(i/slider-handle.gif); }
|
||||
.ui-slider-handle-active { border: 1px dotted black; }
|
||||
.ui-slider-disabled .ui-slider-handle { opacity: 0.5; filter: alpha(opacity=50); }
|
||||
.ui-slider-range { position: absolute; background: #50A029; opacity: 0.3; filter: alpha(opacity=30); width: 100%; height: 100%; }
|
||||
/* This file skins sliders */
|
||||
|
||||
/* Default slider backgrounds */
|
||||
.ui-slider, .ui-slider-1 { background-image: url(i/slider-bg-1.png); }
|
||||
.ui-slider-2 { background-image: url(i/slider-bg-2.png); }
|
||||
.ui-slider { width: 200px; height: 23px; position: relative; background-repeat: no-repeat; background-position: center center; }
|
||||
.ui-slider-handle { position: absolute; z-index: 1; height: 23px; width: 12px; top: 0px; left: 0px; background-image: url(i/slider-handle.gif); }
|
||||
.ui-slider-handle-active { border: 1px dotted black; }
|
||||
.ui-slider-disabled .ui-slider-handle { opacity: 0.5; filter: alpha(opacity=50); }
|
||||
.ui-slider-range { position: absolute; background: #50A029; opacity: 0.3; filter: alpha(opacity=30); width: 100%; height: 100%; }
|
||||
|
||||
/* Default slider backgrounds */
|
||||
.ui-slider, .ui-slider-1 { background-image: url(i/slider-bg-1.png); }
|
||||
.ui-slider-2 { background-image: url(i/slider-bg-2.png); }
|
||||
|
||||
@@ -1,207 +1,207 @@
|
||||
/* Main Style Sheet for jQuery UI date picker */
|
||||
#ui-datepicker-div, .ui-datepicker-inline {
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-size: 14px;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
background: #ddd;
|
||||
width: 185px;
|
||||
}
|
||||
#ui-datepicker-div {
|
||||
display: none;
|
||||
border: 1px solid #777;
|
||||
z-index: 9999; /*must have*/
|
||||
}
|
||||
.ui-datepicker-inline {
|
||||
float: left;
|
||||
display: block;
|
||||
border: 0;
|
||||
}
|
||||
.ui-datepicker-rtl {
|
||||
direction: rtl;
|
||||
}
|
||||
.ui-datepicker-dialog {
|
||||
padding: 5px !important;
|
||||
border: 4px ridge #ddd !important;
|
||||
}
|
||||
button.ui-datepicker-trigger {
|
||||
width: 25px;
|
||||
}
|
||||
img.ui-datepicker-trigger {
|
||||
margin: 2px;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.ui-datepicker-prompt {
|
||||
float: left;
|
||||
padding: 2px;
|
||||
background: #ddd;
|
||||
color: #000;
|
||||
}
|
||||
* html .ui-datepicker-prompt {
|
||||
width: 185px;
|
||||
}
|
||||
.ui-datepicker-control, .ui-datepicker-links, .ui-datepicker-header, .ui-datepicker {
|
||||
clear: both;
|
||||
float: left;
|
||||
width: 100%;
|
||||
color: #fff;
|
||||
}
|
||||
.ui-datepicker-control {
|
||||
background: #400;
|
||||
padding: 2px 0px;
|
||||
}
|
||||
.ui-datepicker-links {
|
||||
background: #000;
|
||||
padding: 2px 0px;
|
||||
}
|
||||
.ui-datepicker-control, .ui-datepicker-links {
|
||||
font-weight: bold;
|
||||
font-size: 80%;
|
||||
}
|
||||
.ui-datepicker-links label { /* disabled links */
|
||||
padding: 2px 5px;
|
||||
color: #888;
|
||||
}
|
||||
.ui-datepicker-clear, .ui-datepicker-prev {
|
||||
float: left;
|
||||
width: 34%;
|
||||
}
|
||||
.ui-datepicker-rtl .ui-datepicker-clear, .ui-datepicker-rtl .ui-datepicker-prev {
|
||||
float: right;
|
||||
text-align: right;
|
||||
}
|
||||
.ui-datepicker-current {
|
||||
float: left;
|
||||
width: 30%;
|
||||
text-align: center;
|
||||
}
|
||||
.ui-datepicker-close, .ui-datepicker-next {
|
||||
float: right;
|
||||
width: 34%;
|
||||
text-align: right;
|
||||
}
|
||||
.ui-datepicker-rtl .ui-datepicker-close, .ui-datepicker-rtl .ui-datepicker-next {
|
||||
float: left;
|
||||
text-align: left;
|
||||
}
|
||||
.ui-datepicker-header {
|
||||
padding: 1px 0 3px;
|
||||
background: #333;
|
||||
text-align: center;
|
||||
font-weight: bold;
|
||||
height: 1.3em;
|
||||
}
|
||||
.ui-datepicker-header select {
|
||||
background: #333;
|
||||
color: #fff;
|
||||
border: 0px;
|
||||
font-weight: bold;
|
||||
}
|
||||
.ui-datepicker {
|
||||
background: #ccc;
|
||||
text-align: center;
|
||||
font-size: 100%;
|
||||
}
|
||||
.ui-datepicker a {
|
||||
display: block;
|
||||
width: 100%;
|
||||
}
|
||||
.ui-datepicker-titleRow {
|
||||
background: #777;
|
||||
}
|
||||
.ui-datepicker-daysRow {
|
||||
background: #eee;
|
||||
color: #666;
|
||||
}
|
||||
.ui-datepicker-weekCol {
|
||||
background: #777;
|
||||
color: #fff;
|
||||
}
|
||||
.ui-datepicker-daysCell {
|
||||
color: #000;
|
||||
border: 1px solid #ddd;
|
||||
}
|
||||
.ui-datepicker-daysCell a{
|
||||
display: block;
|
||||
}
|
||||
.ui-datepicker-weekEndCell {
|
||||
background: #ddd;
|
||||
}
|
||||
.ui-datepicker-titleRow .ui-datepicker-weekEndCell {
|
||||
background: #777;
|
||||
}
|
||||
.ui-datepicker-daysCellOver {
|
||||
background: #fff;
|
||||
border: 1px solid #777;
|
||||
}
|
||||
.ui-datepicker-unselectable {
|
||||
color: #888;
|
||||
}
|
||||
.ui-datepicker-today {
|
||||
background: #fcc !important;
|
||||
}
|
||||
.ui-datepicker-currentDay {
|
||||
background: #999 !important;
|
||||
}
|
||||
.ui-datepicker-status {
|
||||
background: #ddd;
|
||||
width: 100%;
|
||||
font-size: 80%;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
/* ________ Datepicker Links _______
|
||||
|
||||
** Reset link properties and then override them with !important */
|
||||
#ui-datepicker-div a, .ui-datepicker-inline a {
|
||||
cursor: pointer;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
background: none;
|
||||
color: #000;
|
||||
}
|
||||
.ui-datepicker-inline .ui-datepicker-links a {
|
||||
padding: 0 5px !important;
|
||||
}
|
||||
.ui-datepicker-control a, .ui-datepicker-links a {
|
||||
padding: 2px 5px !important;
|
||||
color: #eee !important;
|
||||
}
|
||||
.ui-datepicker-titleRow a {
|
||||
color: #eee !important;
|
||||
}
|
||||
.ui-datepicker-control a:hover {
|
||||
background: #fdd !important;
|
||||
color: #333 !important;
|
||||
}
|
||||
.ui-datepicker-links a:hover, .ui-datepicker-titleRow a:hover {
|
||||
background: #ddd !important;
|
||||
color: #333 !important;
|
||||
}
|
||||
|
||||
/* ___________ MULTIPLE MONTHS _________*/
|
||||
|
||||
.ui-datepicker-multi .ui-datepicker {
|
||||
border: 1px solid #777;
|
||||
}
|
||||
.ui-datepicker-oneMonth {
|
||||
float: left;
|
||||
width: 185px;
|
||||
}
|
||||
.ui-datepicker-newRow {
|
||||
clear: left;
|
||||
}
|
||||
|
||||
/* ___________ IE6 IFRAME FIX ________ */
|
||||
|
||||
.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*/
|
||||
/* Main Style Sheet for jQuery UI date picker */
|
||||
#ui-datepicker-div, .ui-datepicker-inline {
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
font-size: 14px;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
background: #ddd;
|
||||
width: 185px;
|
||||
}
|
||||
#ui-datepicker-div {
|
||||
display: none;
|
||||
border: 1px solid #777;
|
||||
z-index: 9999; /*must have*/
|
||||
}
|
||||
.ui-datepicker-inline {
|
||||
float: left;
|
||||
display: block;
|
||||
border: 0;
|
||||
}
|
||||
.ui-datepicker-rtl {
|
||||
direction: rtl;
|
||||
}
|
||||
.ui-datepicker-dialog {
|
||||
padding: 5px !important;
|
||||
border: 4px ridge #ddd !important;
|
||||
}
|
||||
button.ui-datepicker-trigger {
|
||||
width: 25px;
|
||||
}
|
||||
img.ui-datepicker-trigger {
|
||||
margin: 2px;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.ui-datepicker-prompt {
|
||||
float: left;
|
||||
padding: 2px;
|
||||
background: #ddd;
|
||||
color: #000;
|
||||
}
|
||||
* html .ui-datepicker-prompt {
|
||||
width: 185px;
|
||||
}
|
||||
.ui-datepicker-control, .ui-datepicker-links, .ui-datepicker-header, .ui-datepicker {
|
||||
clear: both;
|
||||
float: left;
|
||||
width: 100%;
|
||||
color: #fff;
|
||||
}
|
||||
.ui-datepicker-control {
|
||||
background: #400;
|
||||
padding: 2px 0px;
|
||||
}
|
||||
.ui-datepicker-links {
|
||||
background: #000;
|
||||
padding: 2px 0px;
|
||||
}
|
||||
.ui-datepicker-control, .ui-datepicker-links {
|
||||
font-weight: bold;
|
||||
font-size: 80%;
|
||||
}
|
||||
.ui-datepicker-links label { /* disabled links */
|
||||
padding: 2px 5px;
|
||||
color: #888;
|
||||
}
|
||||
.ui-datepicker-clear, .ui-datepicker-prev {
|
||||
float: left;
|
||||
width: 34%;
|
||||
}
|
||||
.ui-datepicker-rtl .ui-datepicker-clear, .ui-datepicker-rtl .ui-datepicker-prev {
|
||||
float: right;
|
||||
text-align: right;
|
||||
}
|
||||
.ui-datepicker-current {
|
||||
float: left;
|
||||
width: 30%;
|
||||
text-align: center;
|
||||
}
|
||||
.ui-datepicker-close, .ui-datepicker-next {
|
||||
float: right;
|
||||
width: 34%;
|
||||
text-align: right;
|
||||
}
|
||||
.ui-datepicker-rtl .ui-datepicker-close, .ui-datepicker-rtl .ui-datepicker-next {
|
||||
float: left;
|
||||
text-align: left;
|
||||
}
|
||||
.ui-datepicker-header {
|
||||
padding: 1px 0 3px;
|
||||
background: #333;
|
||||
text-align: center;
|
||||
font-weight: bold;
|
||||
height: 1.3em;
|
||||
}
|
||||
.ui-datepicker-header select {
|
||||
background: #333;
|
||||
color: #fff;
|
||||
border: 0px;
|
||||
font-weight: bold;
|
||||
}
|
||||
.ui-datepicker {
|
||||
background: #ccc;
|
||||
text-align: center;
|
||||
font-size: 100%;
|
||||
}
|
||||
.ui-datepicker a {
|
||||
display: block;
|
||||
width: 100%;
|
||||
}
|
||||
.ui-datepicker-titleRow {
|
||||
background: #777;
|
||||
}
|
||||
.ui-datepicker-daysRow {
|
||||
background: #eee;
|
||||
color: #666;
|
||||
}
|
||||
.ui-datepicker-weekCol {
|
||||
background: #777;
|
||||
color: #fff;
|
||||
}
|
||||
.ui-datepicker-daysCell {
|
||||
color: #000;
|
||||
border: 1px solid #ddd;
|
||||
}
|
||||
.ui-datepicker-daysCell a{
|
||||
display: block;
|
||||
}
|
||||
.ui-datepicker-weekEndCell {
|
||||
background: #ddd;
|
||||
}
|
||||
.ui-datepicker-titleRow .ui-datepicker-weekEndCell {
|
||||
background: #777;
|
||||
}
|
||||
.ui-datepicker-daysCellOver {
|
||||
background: #fff;
|
||||
border: 1px solid #777;
|
||||
}
|
||||
.ui-datepicker-unselectable {
|
||||
color: #888;
|
||||
}
|
||||
.ui-datepicker-today {
|
||||
background: #fcc !important;
|
||||
}
|
||||
.ui-datepicker-currentDay {
|
||||
background: #999 !important;
|
||||
}
|
||||
.ui-datepicker-status {
|
||||
background: #ddd;
|
||||
width: 100%;
|
||||
font-size: 80%;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
/* ________ Datepicker Links _______
|
||||
|
||||
** Reset link properties and then override them with !important */
|
||||
#ui-datepicker-div a, .ui-datepicker-inline a {
|
||||
cursor: pointer;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
background: none;
|
||||
color: #000;
|
||||
}
|
||||
.ui-datepicker-inline .ui-datepicker-links a {
|
||||
padding: 0 5px !important;
|
||||
}
|
||||
.ui-datepicker-control a, .ui-datepicker-links a {
|
||||
padding: 2px 5px !important;
|
||||
color: #eee !important;
|
||||
}
|
||||
.ui-datepicker-titleRow a {
|
||||
color: #eee !important;
|
||||
}
|
||||
.ui-datepicker-control a:hover {
|
||||
background: #fdd !important;
|
||||
color: #333 !important;
|
||||
}
|
||||
.ui-datepicker-links a:hover, .ui-datepicker-titleRow a:hover {
|
||||
background: #ddd !important;
|
||||
color: #333 !important;
|
||||
}
|
||||
|
||||
/* ___________ MULTIPLE MONTHS _________*/
|
||||
|
||||
.ui-datepicker-multi .ui-datepicker {
|
||||
border: 1px solid #777;
|
||||
}
|
||||
.ui-datepicker-oneMonth {
|
||||
float: left;
|
||||
width: 185px;
|
||||
}
|
||||
.ui-datepicker-newRow {
|
||||
clear: left;
|
||||
}
|
||||
|
||||
/* ___________ IE6 IFRAME FIX ________ */
|
||||
|
||||
.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*/
|
||||
}
|
||||
Reference in New Issue
Block a user