ueditor 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- data/MIT-LICENSE +20 -0
- data/README.rdoc +9 -0
- data/app/assets/.gitkeep +0 -0
- data/app/assets/javascripts/ueditor.js +14 -0
- data/app/assets/javascripts/ueditor/CHANGELOG.TXT +152 -0
- data/app/assets/javascripts/ueditor/dialogs/anchor/anchor.html +86 -0
- data/app/assets/javascripts/ueditor/dialogs/code/code.html +158 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/emotion.css +121 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/emotion.html +35 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/emotion.js +137 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/0.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/babycat/bc_0001.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/babycat/bc_0002.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/babycat/bc_0003.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/babycat/bc_0004.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/babycat/bc_0005.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/babycat/bc_0006.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/babycat/bc_0007.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/babycat/bc_0008.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/babycat/bc_0009.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/babycat/bc_0010.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/babycat/bc_0011.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/babycat/bc_0012.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/babycat/bc_0013.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/babycat/bc_0014.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/babycat/bc_0015.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/babycat/bc_0016.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/babycat/bc_0017.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/babycat/bc_0018.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/babycat/bc_0019.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/babycat/bc_0020.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bface.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0001.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0002.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0003.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0004.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0005.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0006.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0007.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0008.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0009.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0010.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0011.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0012.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0013.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0014.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0015.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0016.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0017.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0018.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0019.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0020.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0021.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0022.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0023.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0024.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0025.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0026.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0027.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0028.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0029.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0030.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0031.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0032.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0033.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0034.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0035.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0036.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0037.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0038.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0039.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0040.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0041.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0042.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0043.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0044.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0045.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0046.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0047.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0048.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0049.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0050.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0051.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0052.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0053.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0054.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0055.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0056.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0057.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0058.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0059.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0060.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0061.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0062.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/bobo/b_0063.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/cface.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0001.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0002.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0003.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0004.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0005.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0006.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0007.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0008.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0009.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0010.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0011.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0012.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0013.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0014.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0015.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0016.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0017.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0018.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0019.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0020.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0021.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0022.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0023.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0024.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0025.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0026.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0027.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0028.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0029.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0030.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0031.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0032.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0033.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0034.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0035.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0036.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0037.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0038.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0039.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0040.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0041.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0042.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0043.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0044.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0045.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0046.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0047.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0048.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0049.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/face/f_0050.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/fface.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0001.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0002.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0003.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0004.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0005.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0006.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0007.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0008.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0009.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0010.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0011.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0012.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0013.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0014.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0015.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0016.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0017.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0018.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0019.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0020.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0021.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0022.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0023.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0024.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0025.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0026.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0027.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0028.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0029.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0030.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0031.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0032.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0033.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0034.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0035.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0036.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0037.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0038.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0039.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0040.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0041.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0042.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0043.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0044.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0045.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0046.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0047.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0048.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0049.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0050.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0051.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0052.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0053.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0054.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0055.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0056.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0057.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0058.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0059.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0060.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0061.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0062.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0063.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0064.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0065.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0066.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0067.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0068.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0069.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0070.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0071.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0072.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0073.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0074.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0075.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0076.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0077.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0078.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0079.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0080.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0081.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0082.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0083.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jx2/j_0084.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/jxface2.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0001.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0002.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0003.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0004.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0005.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0006.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0007.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0008.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0009.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0010.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0011.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0012.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0013.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0014.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0015.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0016.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0017.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0018.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0019.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0020.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0021.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0022.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0023.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0024.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0025.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0026.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0027.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0028.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0029.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0030.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0031.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0032.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0033.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0034.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0035.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0036.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0037.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0038.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0039.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0040.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0041.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0042.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0043.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0044.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0045.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0046.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0047.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0048.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0049.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0050.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0051.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/ldw/l_0052.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/neweditor-tab-bg.png +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tface.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0001.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0002.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0003.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0004.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0005.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0006.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0007.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0008.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0009.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0010.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0011.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0012.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0013.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0014.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0015.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0016.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0017.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0018.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0019.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0020.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0021.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0022.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0023.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0024.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0025.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0026.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0027.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0028.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0029.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0030.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0031.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0032.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0033.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0034.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0035.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0036.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0037.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0038.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0039.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/tsj/t_0040.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/wface.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/yface.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0001.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0002.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0003.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0004.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0005.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0006.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0007.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0008.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0009.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0010.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0011.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0012.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0013.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0014.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0015.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0016.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0017.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0018.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0019.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0020.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0021.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0022.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0023.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0024.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0025.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0026.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0027.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0028.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0029.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0030.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0031.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0032.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0033.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0034.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0035.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0036.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0037.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0038.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0039.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/emotion/images/youa/y_0040.gif +0 -0
- data/app/assets/javascripts/ueditor/dialogs/gmap/gmap.html +104 -0
- data/app/assets/javascripts/ueditor/dialogs/help/help.html +156 -0
- data/app/assets/javascripts/ueditor/dialogs/image/callbacks.js +80 -0
- data/app/assets/javascripts/ueditor/dialogs/image/image.html +628 -0
- data/app/assets/javascripts/ueditor/dialogs/image/imageUploader.swf +0 -0
- data/app/assets/javascripts/ueditor/dialogs/image/tangram.js +1 -0
- data/app/assets/javascripts/ueditor/dialogs/insertframe/insertframe.html +131 -0
- data/app/assets/javascripts/ueditor/dialogs/internal.js +10 -0
- data/app/assets/javascripts/ueditor/dialogs/link/link.html +130 -0
- data/app/assets/javascripts/ueditor/dialogs/map/map.html +132 -0
- data/app/assets/javascripts/ueditor/dialogs/searchreplace/searchreplace.html +254 -0
- data/app/assets/javascripts/ueditor/dialogs/spechars/spechars.html +148 -0
- data/app/assets/javascripts/ueditor/dialogs/table/table.html +231 -0
- data/app/assets/javascripts/ueditor/dialogs/video/video.html +113 -0
- data/app/assets/javascripts/ueditor/dialogs/wordimage/fClipboard_ueditor.swf +0 -0
- data/app/assets/javascripts/ueditor/dialogs/wordimage/wordimage.html +250 -0
- data/app/assets/javascripts/ueditor/editor_all.js +15690 -0
- data/app/assets/javascripts/ueditor/editor_all_min.js +1 -0
- data/app/assets/javascripts/ueditor/editor_config.js +337 -0
- data/app/assets/javascripts/ueditor/themes/default/iframe.css +1 -0
- data/app/assets/javascripts/ueditor/themes/default/images/anchor.gif +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/button-bg.gif +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/copy.png +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/dialog-title-bg.png +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/icons-all.gif +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/icons.gif +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/icons.png +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/imgLable.png +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/left.jpg +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/left_focus.jpg +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/localimage.jpg +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/lock.gif +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/logo.png +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/menu/sparator_v.png +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/neweditor-tab-bg.png +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/none.jpg +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/none_focus.jpg +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/pagebreak.gif +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/right.jpg +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/right_focus.jpg +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/tablepicker/highlighted.gif +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/tablepicker/unhighlighted.gif +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/toolbar_bg.png +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/topbottom.jpg +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/topbottom_focus.jpg +0 -0
- data/app/assets/javascripts/ueditor/themes/default/images/upload.png +0 -0
- data/app/assets/javascripts/ueditor/themes/default/ueditor.css +1090 -0
- data/app/assets/javascripts/ueditor/third-party/SyntaxHighlighter/shCore.js +3599 -0
- data/app/assets/javascripts/ueditor/third-party/SyntaxHighlighter/shCoreDefault.css +340 -0
- data/app/assets/javascripts/ueditor/third-party/codemirror2.15/codemirror.css +104 -0
- data/app/assets/javascripts/ueditor/third-party/codemirror2.15/codemirror.js +3581 -0
- data/config/routes.rb +7 -0
- data/lib/ueditor.rb +29 -3
- data/lib/ueditor/config.rb +40 -0
- data/lib/ueditor/engine.rb +24 -0
- data/lib/ueditor/helpers/asset_tag_helper.rb +12 -0
- data/lib/ueditor/helpers/form_builder.rb +11 -0
- data/lib/ueditor/helpers/form_helper.rb +24 -0
- data/lib/ueditor/helpers/form_tag_helper.rb +22 -0
- data/lib/ueditor/utils.rb +51 -0
- data/lib/ueditor/version.rb +1 -1
- metadata +430 -3
@@ -0,0 +1,104 @@
|
|
1
|
+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
2
|
+
"http://www.w3.org/TR/html4/loose.dtd">
|
3
|
+
<html>
|
4
|
+
<head>
|
5
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
6
|
+
<title>Google地图</title>
|
7
|
+
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
|
8
|
+
<script type="text/javascript" src="../internal.js"></script>
|
9
|
+
<style type="text/css">
|
10
|
+
*{color: #838383}
|
11
|
+
body {
|
12
|
+
font-size: 12px;
|
13
|
+
width:540px;
|
14
|
+
height: 350px;
|
15
|
+
overflow: hidden;
|
16
|
+
margin:0px;padding:0px;
|
17
|
+
}
|
18
|
+
.content{
|
19
|
+
padding: 9px 0px 0px 15px;
|
20
|
+
height:100%;
|
21
|
+
}
|
22
|
+
.content table{padding:0px;margin:0px;width: 100%}
|
23
|
+
.content table tr{padding:0px;margin:0px; list-style: none;height: 30px; line-height: 30px;}
|
24
|
+
#city,
|
25
|
+
#address
|
26
|
+
{height:21px;background: #FFF;border:1px solid #d7d7d7;padding: 0px; margin: 0px; line-height: 21px;}
|
27
|
+
#city{width:90px}
|
28
|
+
#address{width:220px}
|
29
|
+
|
30
|
+
a.doSearch{display:block;text-align:center;line-height:24px; text-decoration: none;height:24px;width:95px;border: 0px;margin:0px;padding:0px;background:url(../../themes/default/images/icons-all.gif) no-repeat;}
|
31
|
+
a.doSearch:hover{background-position: 0 -30px;}
|
32
|
+
</style>
|
33
|
+
</head>
|
34
|
+
<body>
|
35
|
+
<div class="content">
|
36
|
+
<table>
|
37
|
+
<tr>
|
38
|
+
<!--<td><label for="city">城市:</label></td>-->
|
39
|
+
<!--<td><input id="city" type="text" value="北京市" /></td>-->
|
40
|
+
<td><label for="address">地址:</label></td>
|
41
|
+
<td><input id="address" type="text" value="北京市" /></td>
|
42
|
+
<td><a href="javascript:doSearch()" class="doSearch">搜索</a></td>
|
43
|
+
</tr>
|
44
|
+
</table>
|
45
|
+
|
46
|
+
<div id="container" style="width: 520px; height: 340px; border: 1px solid gray;"></div>
|
47
|
+
</div>
|
48
|
+
<script type="text/javascript">
|
49
|
+
var map = new google.maps.Map(document.getElementById('container'), {
|
50
|
+
zoom: 3,
|
51
|
+
streetViewControl: false,
|
52
|
+
scaleControl: true,
|
53
|
+
mapTypeId: google.maps.MapTypeId.ROADMAP
|
54
|
+
});
|
55
|
+
var imgcss;
|
56
|
+
var marker = new google.maps.Marker({
|
57
|
+
map: map,
|
58
|
+
draggable: true
|
59
|
+
});
|
60
|
+
function doSearch(){
|
61
|
+
var address = document.getElementById('address').value;
|
62
|
+
var geocoder = new google.maps.Geocoder();
|
63
|
+
geocoder.geocode( { 'address': address}, function (results, status) {
|
64
|
+
if (status == google.maps.GeocoderStatus.OK) {
|
65
|
+
var bounds = results[0].geometry.viewport;
|
66
|
+
map.fitBounds(bounds);
|
67
|
+
marker.setPosition(results[0].geometry.location);
|
68
|
+
marker.setTitle(address);
|
69
|
+
} else alert('无法定位到该地址!');
|
70
|
+
});
|
71
|
+
}
|
72
|
+
document.getElementById('address').onkeydown = function (evt){
|
73
|
+
evt = evt || event;
|
74
|
+
if (evt.keyCode == 13) {
|
75
|
+
doSearch();
|
76
|
+
}
|
77
|
+
};
|
78
|
+
dialog.onok = function (){
|
79
|
+
var center = map.getCenter();
|
80
|
+
var point = marker.getPosition();
|
81
|
+
var url = "http://maps.google.com/maps/api/staticmap?center=" + center.lat() + ',' + center.lng() + "&zoom=" + map.zoom + "&size=520x340&maptype=" + map.getMapTypeId() + "&markers=" + point.lat() + ',' + point.lng() + "&sensor=false";
|
82
|
+
editor.execCommand('inserthtml', '<img width="520" height="340" src="' + url + '"' + (imgcss ? ' style="' + imgcss + '"' :'') + '/>');
|
83
|
+
};
|
84
|
+
|
85
|
+
function getPars(str,par){
|
86
|
+
var reg = new RegExp(par+"=((\\d+|[.,])*)","g");
|
87
|
+
return reg.exec(str)[1];
|
88
|
+
}
|
89
|
+
var img = editor.selection.getRange().getClosedNode();
|
90
|
+
if(img && img.src.indexOf("http://maps.google.com/maps/api/staticmap")!=-1){
|
91
|
+
var url = img.getAttribute("src");
|
92
|
+
var centers = getPars(url,"center").split(",");
|
93
|
+
point = new google.maps.LatLng(Number(centers[0]),Number(centers[1]));
|
94
|
+
map.setCenter(point);
|
95
|
+
map.setZoom(Number(getPars(url,"zoom")));
|
96
|
+
centers = getPars(url,"markers").split(",");
|
97
|
+
marker.setPosition(new google.maps.LatLng(Number(centers[0]),Number(centers[1])));
|
98
|
+
imgcss = img.style.cssText;
|
99
|
+
}else{
|
100
|
+
doSearch();
|
101
|
+
}
|
102
|
+
</script>
|
103
|
+
</body>
|
104
|
+
</html>
|
@@ -0,0 +1,156 @@
|
|
1
|
+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
2
|
+
"http://www.w3.org/TR/html4/loose.dtd">
|
3
|
+
<html>
|
4
|
+
<head>
|
5
|
+
<title>帮助</title>
|
6
|
+
<meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>
|
7
|
+
<script type="text/javascript" src="../internal.js"></script>
|
8
|
+
<style type="text/css">
|
9
|
+
.head .tab-current{
|
10
|
+
background-color:#7DEBFF;
|
11
|
+
}
|
12
|
+
.hide{
|
13
|
+
display:none;
|
14
|
+
}
|
15
|
+
*{color: #838383}
|
16
|
+
body {
|
17
|
+
|
18
|
+
font-size: 12px;
|
19
|
+
width:380px;
|
20
|
+
height: 400px;
|
21
|
+
overflow: hidden;
|
22
|
+
margin:0px;padding:0px;
|
23
|
+
}
|
24
|
+
.warp{
|
25
|
+
padding: 39px 0px 0px 15px;
|
26
|
+
height:90%;position:relative;
|
27
|
+
}
|
28
|
+
h1{font-size:26px;}
|
29
|
+
p{font-size:12px;}
|
30
|
+
.head{position:absolute;height:31px;top:10px;}
|
31
|
+
.content{height:360px;border: 1px solid #ddd;clear:both;padding:5px;overflow: auto;}
|
32
|
+
|
33
|
+
.head span{width:92px;height:29px;line-height:29px;background:red;display:block;float: left;text-align: center;margin-right: 1px;cursor: pointer; }
|
34
|
+
.head span.def{background:url("../../themes/default/images/dialog-title-bg.png") repeat-x;border:1px solid #ccc;}
|
35
|
+
.head span.act{background:#FFF;border:1px solid #ccc;border-bottom: 1px solid #FFF}
|
36
|
+
|
37
|
+
.content table{width:90%;line-height: 20px}
|
38
|
+
.content table thead{font-weight: bold;line-height: 25px;}
|
39
|
+
</style>
|
40
|
+
</head>
|
41
|
+
<body>
|
42
|
+
<div class="warp">
|
43
|
+
<div id="head" class="head">
|
44
|
+
<span class="act" onclick="toggle(0)">快捷键</span>
|
45
|
+
</div>
|
46
|
+
<div class="content">
|
47
|
+
<div id="cont0">
|
48
|
+
<table>
|
49
|
+
<thead>
|
50
|
+
<tr>
|
51
|
+
<td>快捷键</td>
|
52
|
+
<td>功能</td>
|
53
|
+
</tr>
|
54
|
+
</thead>
|
55
|
+
<tbody>
|
56
|
+
<tr>
|
57
|
+
<td>ctrl+b</td>
|
58
|
+
<td>给选中字设置为加粗</td>
|
59
|
+
</tr>
|
60
|
+
<tr>
|
61
|
+
<td>ctrl+c</td>
|
62
|
+
<td>复制选中内容</td>
|
63
|
+
</tr>
|
64
|
+
<tr>
|
65
|
+
<td>ctrl+x</td>
|
66
|
+
<td>剪切选中内容</td>
|
67
|
+
</tr>
|
68
|
+
<tr>
|
69
|
+
<td>ctrl+v</td>
|
70
|
+
<td>粘贴</td>
|
71
|
+
</tr>
|
72
|
+
<tr>
|
73
|
+
<td>ctrl+y</td>
|
74
|
+
<td>重新执行上次操作</td>
|
75
|
+
</tr>
|
76
|
+
<tr>
|
77
|
+
<td>ctrl+z</td>
|
78
|
+
<td>撤销上一次操作</td>
|
79
|
+
</tr>
|
80
|
+
<tr>
|
81
|
+
<td>ctrl+i</td>
|
82
|
+
<td>给选中字设置为斜体</td>
|
83
|
+
</tr>
|
84
|
+
<tr>
|
85
|
+
<td>ctrl+u</td>
|
86
|
+
<td>给选中字加下划线</td>
|
87
|
+
</tr>
|
88
|
+
<tr>
|
89
|
+
<td>ctrl+a</td>
|
90
|
+
<td>全部选中</td>
|
91
|
+
</tr>
|
92
|
+
<tr>
|
93
|
+
<td>ctrl+shift+c</td>
|
94
|
+
<td>清除页面文字格式</td>
|
95
|
+
</tr>
|
96
|
+
<tr>
|
97
|
+
<td>ctrl+shift+l</td>
|
98
|
+
<td>页面文字居左显示</td>
|
99
|
+
</tr>
|
100
|
+
<tr>
|
101
|
+
<td>ctrl+shift+r</td>
|
102
|
+
<td>页面文字居右显示</td>
|
103
|
+
</tr>
|
104
|
+
<tr>
|
105
|
+
<td>shift+enter</td>
|
106
|
+
<td>软回车</td>
|
107
|
+
</tr>
|
108
|
+
</tbody>
|
109
|
+
</table>
|
110
|
+
</div>
|
111
|
+
</div>
|
112
|
+
</div>
|
113
|
+
<script type="text/javascript">
|
114
|
+
function jbind(obj,evt,fun){
|
115
|
+
if(obj.addEventListener){ // firefox,w3c
|
116
|
+
obj.addEventListener(evt,fun,false);
|
117
|
+
}else{// ie
|
118
|
+
obj.attachEvent("on"+evt,function(){fun.apply(obj);});
|
119
|
+
}
|
120
|
+
}
|
121
|
+
function getChildrenByClassName (parentClass,childtag){
|
122
|
+
var divs = document.getElementsByTagName("div"),i=0,headChilds,j=0,arr = [];
|
123
|
+
for(;i<divs.length;i++){
|
124
|
+
if(divs[i].className == parentClass){
|
125
|
+
headChilds = divs[i].childNodes;
|
126
|
+
}
|
127
|
+
}
|
128
|
+
for(;j<headChilds.length;j++){
|
129
|
+
if(new RegExp(childtag,"i").test(headChilds[j].tagName)){
|
130
|
+
arr.push(headChilds[j]);
|
131
|
+
}
|
132
|
+
}
|
133
|
+
return arr;
|
134
|
+
}
|
135
|
+
function hideAll (){
|
136
|
+
var tabs = getChildrenByClassName("head","span"),
|
137
|
+
contents = getChildrenByClassName("content","div"),i=0;
|
138
|
+
for(;i<tabs.length;i++){
|
139
|
+
tabs[i].className = "";
|
140
|
+
contents[i].className = "hide";
|
141
|
+
}
|
142
|
+
}
|
143
|
+
function toggle (i){
|
144
|
+
hideAll();
|
145
|
+
var tabs = getChildrenByClassName("head","span"),
|
146
|
+
contents = getChildrenByClassName("content","div");
|
147
|
+
for(var s=0;s<tabs.length;s++){
|
148
|
+
tabs[s].className = "def";
|
149
|
+
}
|
150
|
+
|
151
|
+
tabs[i].className = "act";
|
152
|
+
contents[i].className = "";
|
153
|
+
}
|
154
|
+
</script>
|
155
|
+
</body>
|
156
|
+
</html>
|
@@ -0,0 +1,80 @@
|
|
1
|
+
/**
|
2
|
+
* Created by JetBrains WebStorm.
|
3
|
+
* User: taoqili
|
4
|
+
* Date: 11-9-29
|
5
|
+
* Time: 下午3:50
|
6
|
+
* To change this template use File | Settings | File Templates.
|
7
|
+
*/
|
8
|
+
/**
|
9
|
+
* 选择文件后的回调函数
|
10
|
+
* @param Array
|
11
|
+
*/
|
12
|
+
function selectFileCallback(selectFiles){
|
13
|
+
// 数组里单个元素为Object,{index:在多图上传的索引号, name:文件名, size:文件大小}
|
14
|
+
// 其中size单位为Byte
|
15
|
+
console.log("选择了如下文件:");
|
16
|
+
var obj;
|
17
|
+
for(var i = 0, iLen = selectFiles.length; i < iLen; i++){
|
18
|
+
obj = selectFiles[i];
|
19
|
+
console.log(obj.index, obj.name, obj.size);
|
20
|
+
}
|
21
|
+
console.log("===================================");
|
22
|
+
}
|
23
|
+
/**
|
24
|
+
* 文件大小超出时的回调函数
|
25
|
+
* @param Object
|
26
|
+
*/
|
27
|
+
function exceedFileCallback(file){
|
28
|
+
// 参数为Object,{index:在多图上传的索引号, name:文件名, size:文件大小}
|
29
|
+
// 其中size单位为Byte
|
30
|
+
console.log("文件超出大小限制:");
|
31
|
+
console.log(file.index, file.name, file.size);
|
32
|
+
console.log("===================================");
|
33
|
+
}
|
34
|
+
/**
|
35
|
+
* 删除文件后的回调函数
|
36
|
+
* @param Array
|
37
|
+
*/
|
38
|
+
function deleteFileCallback(delFiles){
|
39
|
+
// 数组里单个元素为Object,{index:在多图上传的索引号, name:文件名, size:文件大小}
|
40
|
+
// 其中size单位为Byte
|
41
|
+
console.log("删除了如下文件:");
|
42
|
+
var obj;
|
43
|
+
for(var i = 0, iLen = delFiles.length; i < iLen; i++){
|
44
|
+
obj = delFiles[i];
|
45
|
+
console.log(obj.index, obj.name, obj.size);
|
46
|
+
}
|
47
|
+
console.log("===================================");
|
48
|
+
}
|
49
|
+
/**
|
50
|
+
* 开始上传单个文件的回调函数
|
51
|
+
* @param Object
|
52
|
+
*/
|
53
|
+
function startUploadCallback(file){
|
54
|
+
console.log("开始上传如下文件:");
|
55
|
+
console.log(file.name, file.size);
|
56
|
+
console.log("===================================");
|
57
|
+
}
|
58
|
+
/**
|
59
|
+
* 单个文件上传完成的回调函数
|
60
|
+
* @param Object/String 服务端返回啥,参数就是啥
|
61
|
+
*/
|
62
|
+
function uploadCompleteCallback(data){
|
63
|
+
console.log("上传成功", data);
|
64
|
+
console.log("===================================");
|
65
|
+
}
|
66
|
+
/**
|
67
|
+
* 单个文件上传失败的回调函数
|
68
|
+
* @param Object/String 服务端返回啥,参数就是啥
|
69
|
+
*/
|
70
|
+
function uploadErrorCallback(data){
|
71
|
+
console.log("上传失败", data);
|
72
|
+
console.log("===================================");
|
73
|
+
}
|
74
|
+
/**
|
75
|
+
* 全部上传完成的回调函数
|
76
|
+
*/
|
77
|
+
function allCompleteCallback(){
|
78
|
+
console.log("全部上传成功");
|
79
|
+
console.log("===================================");
|
80
|
+
}
|
@@ -0,0 +1,628 @@
|
|
1
|
+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
2
|
+
"http://www.w3.org/TR/html4/loose.dtd">
|
3
|
+
<html>
|
4
|
+
<head>
|
5
|
+
<title></title>
|
6
|
+
<meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>
|
7
|
+
<style type="text/css">
|
8
|
+
body {
|
9
|
+
font-size: 12px;
|
10
|
+
overflow: hidden;
|
11
|
+
padding: 10px;
|
12
|
+
margin: 0;
|
13
|
+
color: #838383
|
14
|
+
}
|
15
|
+
|
16
|
+
.tabWarper {
|
17
|
+
width: 600px;
|
18
|
+
height: 370px;
|
19
|
+
overflow: hidden;
|
20
|
+
position: relative;
|
21
|
+
}
|
22
|
+
|
23
|
+
.head {
|
24
|
+
height: 35px;
|
25
|
+
line-height: 35px;
|
26
|
+
position: relative;
|
27
|
+
z-index: 2
|
28
|
+
}
|
29
|
+
|
30
|
+
.head span {
|
31
|
+
width: 62px;
|
32
|
+
height: 28px;
|
33
|
+
line-height: 28px;
|
34
|
+
display: block;
|
35
|
+
float: left;
|
36
|
+
text-align: center;
|
37
|
+
margin-right: 1px;
|
38
|
+
cursor: pointer
|
39
|
+
}
|
40
|
+
|
41
|
+
.head span.def {
|
42
|
+
background: url("../../themes/default/images/dialog-title-bg.png") repeat-x;
|
43
|
+
border: 1px solid #ccc;
|
44
|
+
}
|
45
|
+
|
46
|
+
.head span.act {
|
47
|
+
background: #FFF;
|
48
|
+
border: 1px solid #ccc;
|
49
|
+
border-bottom: 1px solid #FFF
|
50
|
+
}
|
51
|
+
|
52
|
+
.tabContainer {
|
53
|
+
width: 1250px;
|
54
|
+
height: 320px;
|
55
|
+
position: relative;
|
56
|
+
top: -6px;
|
57
|
+
}
|
58
|
+
|
59
|
+
.content {
|
60
|
+
width: 588px;
|
61
|
+
height: 320px;
|
62
|
+
float: left;
|
63
|
+
border: 1px solid #ddd;
|
64
|
+
padding: 5px;
|
65
|
+
margin-right: 20px;
|
66
|
+
}
|
67
|
+
|
68
|
+
.content table {
|
69
|
+
margin-top: 5px;
|
70
|
+
position: relative;
|
71
|
+
}
|
72
|
+
|
73
|
+
.content table tr {
|
74
|
+
height: 35px;
|
75
|
+
line-height: 35px;
|
76
|
+
}
|
77
|
+
|
78
|
+
.lable {
|
79
|
+
text-align: center;
|
80
|
+
width: 45px;
|
81
|
+
}
|
82
|
+
|
83
|
+
td input {
|
84
|
+
width: 125px;
|
85
|
+
height: 21px;
|
86
|
+
line-height: 21px;
|
87
|
+
background: #FFF;
|
88
|
+
border: 1px solid #d7d7d7;
|
89
|
+
}
|
90
|
+
|
91
|
+
#url {
|
92
|
+
width: 534px;
|
93
|
+
margin-bottom: 2px;
|
94
|
+
}
|
95
|
+
|
96
|
+
#preview {
|
97
|
+
width: 330px;
|
98
|
+
height: 252px;
|
99
|
+
position: absolute;
|
100
|
+
top: 50px;
|
101
|
+
left: 246px;
|
102
|
+
background: #eee;
|
103
|
+
padding: 5px;
|
104
|
+
overflow: auto
|
105
|
+
}
|
106
|
+
|
107
|
+
.start {
|
108
|
+
float: right;
|
109
|
+
width: 100px;
|
110
|
+
height: 28px;
|
111
|
+
line-height: 28px;
|
112
|
+
background: #ddd url("../../themes/default/images/upload.png");
|
113
|
+
border: 0;
|
114
|
+
cursor: pointer
|
115
|
+
}
|
116
|
+
|
117
|
+
.control {
|
118
|
+
z-index: 9999;
|
119
|
+
position: absolute;
|
120
|
+
width: 588px;
|
121
|
+
height: 36px;
|
122
|
+
line-height: 36px;
|
123
|
+
top: 315px;
|
124
|
+
left: 6px;
|
125
|
+
}
|
126
|
+
|
127
|
+
.align {
|
128
|
+
float: left;
|
129
|
+
height: 36px;
|
130
|
+
}
|
131
|
+
|
132
|
+
.singlelable {
|
133
|
+
background: url(../../themes/default/images/imgLable.png) -21px 2px no-repeat
|
134
|
+
}
|
135
|
+
|
136
|
+
.batchlable {
|
137
|
+
display: block;
|
138
|
+
float: left;
|
139
|
+
width: 50px;
|
140
|
+
height: 36px;
|
141
|
+
background: url(../../themes/default/images/imgLable.png) -21px 2px no-repeat
|
142
|
+
}
|
143
|
+
|
144
|
+
.lock-zoom {
|
145
|
+
position: absolute;
|
146
|
+
width: 25px;
|
147
|
+
height: 40px;
|
148
|
+
top: 60px;
|
149
|
+
left: 200px;
|
150
|
+
background: url("../../themes/default/images/lock.gif") 0 -3px;
|
151
|
+
}
|
152
|
+
|
153
|
+
.lock-zoom input {
|
154
|
+
position: relative;
|
155
|
+
top: 10px;
|
156
|
+
left: -2px;
|
157
|
+
}
|
158
|
+
.flag{color: blue}
|
159
|
+
</style>
|
160
|
+
<script type="text/javascript" src="../internal.js"></script>
|
161
|
+
</head>
|
162
|
+
<body>
|
163
|
+
<div class="tabWarper">
|
164
|
+
<div id="head" class="head">
|
165
|
+
<span name="tab1" onclick="switchTab(this,0)" class="act">网络图片</span>
|
166
|
+
<span name="tab2" onclick="switchTab(this,1)" class="def">本地上传</span>
|
167
|
+
</div>
|
168
|
+
<div id="tabs" class="tabContainer">
|
169
|
+
<div id="tab1" class="content">
|
170
|
+
<table cellpadding="0" cellspacing="0">
|
171
|
+
<tr>
|
172
|
+
<td class="lable"> 地 址:</td>
|
173
|
+
<td><input id="url" type="text" value=""/></td>
|
174
|
+
</tr>
|
175
|
+
|
176
|
+
<tr>
|
177
|
+
<td class="lable">宽 度:</td>
|
178
|
+
<td><input type="text" id="imgWidth"/> px</td>
|
179
|
+
</tr>
|
180
|
+
<tr>
|
181
|
+
<td class="lable">高 度:</td>
|
182
|
+
<td><input type="text" id="imgHeight"/> px</td>
|
183
|
+
</tr>
|
184
|
+
|
185
|
+
<tr>
|
186
|
+
<td class="lable">边 框:</td>
|
187
|
+
<td><input type="text" id="imgBorder"/> px</td>
|
188
|
+
</tr>
|
189
|
+
<tr>
|
190
|
+
<td class="lable">边 距:</td>
|
191
|
+
<td><input type="text" id="imgMargin"/> px</td>
|
192
|
+
</tr>
|
193
|
+
<tr>
|
194
|
+
<td class="lable">描 述:</td>
|
195
|
+
<td><input type="text" id="imgTitle"/></td>
|
196
|
+
</tr>
|
197
|
+
<tr>
|
198
|
+
<td class="lable singlelable"></td>
|
199
|
+
<td id="singleFloat">
|
200
|
+
<img name="none" src="../../themes/default/images/none_focus.jpg" alt="默认" title="默认"
|
201
|
+
onclick="imgselect(this)"/>
|
202
|
+
<img name="left" src="../../themes/default/images/left.jpg" alt="左浮动" title="左浮动"
|
203
|
+
onclick="imgselect(this)"/>
|
204
|
+
<img name="right" src="../../themes/default/images/right.jpg" alt="右浮动" title="右浮动"
|
205
|
+
onclick="imgselect(this)"/>
|
206
|
+
<img name="center" src="../../themes/default/images/topbottom.jpg" alt="居中" title="居中"
|
207
|
+
onclick="imgselect(this)"/>
|
208
|
+
</td>
|
209
|
+
</tr>
|
210
|
+
<!--<tr style="display:none" id="originalSize"><td>原 始:</td><td></td></tr>-->
|
211
|
+
</table>
|
212
|
+
<div id="msg" style="display: none;color: red">
|
213
|
+
<span style="font-size: 14px">图片转存步骤:</span>
|
214
|
+
|
215
|
+
<li style="list-style-type: none;">1.复制本选项卡中图片地址,切换至<span class="flag">本地上传</span></li>
|
216
|
+
<li style="list-style-type: none">2.点击<span class="flag">添加图片</span>,在<span class="flag">文件名</span>框中粘贴图片地址</li>
|
217
|
+
<li style="list-style-type: none;">3.正常执行图片上传操作即可</li>
|
218
|
+
</div>
|
219
|
+
<div id="preview"></div>
|
220
|
+
<div class="lock-zoom">
|
221
|
+
<input id="zoom" title="锁定宽高比例" type="checkbox" checked="checked"/>
|
222
|
+
</div>
|
223
|
+
|
224
|
+
</div>
|
225
|
+
<div id="tab2" class="content"></div>
|
226
|
+
</div>
|
227
|
+
<div id="control" class="control" style="display: none">
|
228
|
+
<span class="batchlable"></span>
|
229
|
+
<span id="batchFloat" class="align">
|
230
|
+
<img name="none" src="../../themes/default/images/none_focus.jpg" alt="默认" title="默认"
|
231
|
+
onclick="imgselect(this)"/>
|
232
|
+
<img name="left" src="../../themes/default/images/left.jpg" alt="左浮动" title="左浮动"
|
233
|
+
onclick="imgselect(this)"/>
|
234
|
+
<img name="right" src="../../themes/default/images/right.jpg" alt="右浮动" title="右浮动"
|
235
|
+
onclick="imgselect(this)"/>
|
236
|
+
<img name="center" src="../../themes/default/images/topbottom.jpg" alt="居中" title="居中"
|
237
|
+
onclick="imgselect(this)"/>
|
238
|
+
</span>
|
239
|
+
<button id="start" class="start" style="display: none"></button>
|
240
|
+
</div>
|
241
|
+
|
242
|
+
</div>
|
243
|
+
<script type="text/javascript" src="tangram.js"></script>
|
244
|
+
|
245
|
+
<!--完整的回调函数,有需要的可以完整取用-->
|
246
|
+
<script type="text/javascript" src="callbacks.js"></script>
|
247
|
+
|
248
|
+
<script type="text/javascript">
|
249
|
+
/*-=-=-=-=-=-=-=全局变量模块-=-=-=-=-=-=-*/
|
250
|
+
var imageUrls = [], //从服务器返回的上传成功图片数组
|
251
|
+
imageCount = 0; //预览框中的图片数量,初始为0
|
252
|
+
|
253
|
+
|
254
|
+
/*-=-=-=-=-=-=-=界面生成模块-=-=-=-=-=-=-*/
|
255
|
+
|
256
|
+
function switchTab(obj, index) {
|
257
|
+
clearFocusClass();
|
258
|
+
obj.className = "act";
|
259
|
+
g("tabs").style.left = index * (-620) + "px";
|
260
|
+
if (obj.getAttribute("name") == "tab2") {
|
261
|
+
g("control").style.display = "";
|
262
|
+
if (imageCount != 0) {
|
263
|
+
dialog.buttons[0].setDisabled(true); //如果预览框中没有图片或者没有成功上传图片,切回来时重新置灰按钮
|
264
|
+
}
|
265
|
+
} else {
|
266
|
+
g("control").style.display = "none";
|
267
|
+
dialog.buttons[0].setDisabled(false); //切回来时重新点亮按钮
|
268
|
+
}
|
269
|
+
}
|
270
|
+
function clearFocusClass() {
|
271
|
+
var heads = g("head").children;
|
272
|
+
for (var i = 0,j; j = heads[i++];) {
|
273
|
+
j.className = "def";
|
274
|
+
}
|
275
|
+
}
|
276
|
+
//flash初始化参数
|
277
|
+
var flashOptions ={
|
278
|
+
createOptions:{
|
279
|
+
id:'flash',
|
280
|
+
url:'imageUploader.swf',
|
281
|
+
width:'588',
|
282
|
+
height:'272',
|
283
|
+
errorMessage:'Flash插件初始化错误,请更新您的flashplayer版本!',
|
284
|
+
wmode:'window',
|
285
|
+
ver:'10.0.0',
|
286
|
+
// 初始化的参数就是这些,
|
287
|
+
vars:{
|
288
|
+
width:588, //width是flash的宽
|
289
|
+
height:272, //height是flash的高
|
290
|
+
gridWidth:115, // gridWidth是每一个预览图片所占的宽度,应该为width的整除
|
291
|
+
gridHeight:120, // gridHeight是每一个预览图片所占的高度,应该为height的整除
|
292
|
+
picWidth:100, // 单张预览图片的宽度
|
293
|
+
picHeight:100, // 单张预览图片的高度
|
294
|
+
uploadDataFieldName:'picdata', // POST请求中图片数据的key
|
295
|
+
picDescFieldName:'pictitle', // POST请求中图片描述的key
|
296
|
+
maxSize:2, // 文件的最大体积,单位M
|
297
|
+
compressSize:1, // 上传前如果图片体积超过该值,会先压缩,单位M
|
298
|
+
maxNum:32, // 最大上传多少个文件
|
299
|
+
backgroundUrl:'', //背景图片,留空默认
|
300
|
+
listBackgroundUrl:'', //预览图背景,留空默认
|
301
|
+
buttonUrl:'', //按钮背景,留空默认
|
302
|
+
compressSide:editor.options.compressSide, //等比压缩的基准,0为按照最长边,1为按照宽度,2为按照高度
|
303
|
+
compressLength:editor.options.maxImageSideLength, // 能接受的最大边长,超过该值Flash会自动等比压缩
|
304
|
+
url:'/ueditor/images', // 上传处理页面的url地址
|
305
|
+
ext:'{"authenticity_token":"参数值1", "param2":"参数值2"}', //可向服务器提交的自定义参数列表
|
306
|
+
fileType:'{"description":"图片", "extension":"*.gif;*.jpeg;*.png;*.jpg"}' //上传文件格式限制
|
307
|
+
|
308
|
+
},
|
309
|
+
container: 'tab2'
|
310
|
+
},
|
311
|
+
selectFileCallback: 'selectFileCallback', // 选择文件的回调
|
312
|
+
//exceedFileCallback: 'exceedFileCallback', // 文件超出限制的最大体积时的回调
|
313
|
+
deleteFileCallback: 'deleteFileCallback', // 删除文件的回调
|
314
|
+
//startUploadCallback: 'startUploadCallback', // 开始上传某个文件时的回调
|
315
|
+
uploadCompleteCallback: 'uploadCompleteCallback', // 某个文件上传完成的回调
|
316
|
+
uploadErrorCallback: function (data){
|
317
|
+
//console && console.log(data);
|
318
|
+
}, // 某个文件上传失败的回调
|
319
|
+
allCompleteCallback: 'allCompleteCallback'// 全部上传完成时的回调
|
320
|
+
//changeFlashHeight: 'changeFlashHeight' // 改变Flash的高度,mode==1的时候才有用
|
321
|
+
|
322
|
+
}
|
323
|
+
var flashObj = new baidu.flash.imageUploader(flashOptions);
|
324
|
+
|
325
|
+
/*-=-=-=-=-=-=-=逻辑处理模块-=-=-=-=-=-=-*/
|
326
|
+
//-----------------核心流程------------------------------
|
327
|
+
var img = editor.selection.getRange().getClosedNode(),oWidth,oHeight,percent;
|
328
|
+
if (!img) img = document.createElement("img");
|
329
|
+
if (img.src) {
|
330
|
+
//图片编辑时显示图片信息
|
331
|
+
showImageInfo();
|
332
|
+
}
|
333
|
+
if (document.attachEvent) {
|
334
|
+
g("url").onpropertychange = function() {
|
335
|
+
if (g("url").value) preloadImg();//trace:解决IE下初始提示bug
|
336
|
+
};
|
337
|
+
} else {
|
338
|
+
g("url").addEventListener("input", function() {
|
339
|
+
preloadImg();
|
340
|
+
}, false);
|
341
|
+
}
|
342
|
+
//点击确定时的事件处理
|
343
|
+
dialog.onok = function() {
|
344
|
+
var actionTab = findActionTab();
|
345
|
+
if (actionTab == "tab1") {
|
346
|
+
return insertSingle();
|
347
|
+
} else if (actionTab == "tab2") {
|
348
|
+
return insertBatch();
|
349
|
+
}
|
350
|
+
};
|
351
|
+
//----------------------------------------------------
|
352
|
+
|
353
|
+
/**
|
354
|
+
* 返回false时不会关闭对话框
|
355
|
+
*/
|
356
|
+
function insertSingle() {
|
357
|
+
//未成功加载图片直接返回
|
358
|
+
if (!img || !img.src) return;
|
359
|
+
// if(img.hasAttribute("word_img") && img.src.indexOf("file:///") == -1){
|
360
|
+
// img.removeAttribute("word_img");
|
361
|
+
// }
|
362
|
+
var imgObj = { src: editor.options.relativePath ? img.getAttribute("src",2) : img.src};
|
363
|
+
var width = g("imgWidth").value;
|
364
|
+
if (!width) width = oWidth;
|
365
|
+
if (!isNumber(width)) {
|
366
|
+
alert("请输入正确的宽度值!例如:140,201");
|
367
|
+
g("imgWidth").value = "";
|
368
|
+
g("imgWidth").focus();
|
369
|
+
return false;
|
370
|
+
}
|
371
|
+
var height = g("imgHeight").value;
|
372
|
+
if (!height) height = oHeight;
|
373
|
+
if (!isNumber(height)) {
|
374
|
+
alert("请输入正确的高度值!例如:140,201");
|
375
|
+
g("imgHeight").value = "";
|
376
|
+
g("imgHeight").focus();
|
377
|
+
return false;
|
378
|
+
}
|
379
|
+
var border = g("imgBorder").value;
|
380
|
+
if (!border && border != 0 && !isNumber(border)) {
|
381
|
+
alert("请输入正确的边框值!例如:1,2");
|
382
|
+
g("imgBorder").value = "";
|
383
|
+
g("imgBorder").focus();
|
384
|
+
return false;
|
385
|
+
}
|
386
|
+
var margin = g("imgMargin").value;
|
387
|
+
if (!margin && margin != 0 && !isNumber(margin)) {
|
388
|
+
alert("请输入正确的边框值!例如:1,2");
|
389
|
+
g("imgMargin").value = "";
|
390
|
+
g("imgMargin").focus();
|
391
|
+
return false;
|
392
|
+
}
|
393
|
+
imgObj.width = width;
|
394
|
+
imgObj.height = height;
|
395
|
+
imgObj.border = border ||"";
|
396
|
+
imgObj.vspace = imgObj.hspace = margin||"";
|
397
|
+
g("imgTitle").value && (imgObj.title = g("imgTitle").value );
|
398
|
+
imgObj.floatStyle = getAlign("singleFloat");
|
399
|
+
imgObj.data_ue_src=imgObj.src;
|
400
|
+
editor.execCommand("insertImage", imgObj);
|
401
|
+
img = null;
|
402
|
+
}
|
403
|
+
|
404
|
+
/**
|
405
|
+
* 返回false时不会关闭对话框
|
406
|
+
*/
|
407
|
+
function insertBatch() {
|
408
|
+
if ( !imageUrls.length ) return;
|
409
|
+
var imgObjs = [],
|
410
|
+
align = getAlign( "batchFloat" );
|
411
|
+
|
412
|
+
for ( var i = 0, ci; ci = imageUrls[i++]; ) {
|
413
|
+
var tmpObj = {};
|
414
|
+
tmpObj.title = ci.title;
|
415
|
+
tmpObj.floatStyle = align;
|
416
|
+
//修正显示时候的地址数据,如果后台返回的是图片的绝对地址,那么此处无需修正
|
417
|
+
tmpObj.data_ue_src = tmpObj.src = editor.options.imagePath + ci.url;
|
418
|
+
imgObjs.push( tmpObj );
|
419
|
+
}
|
420
|
+
editor.execCommand( "insertImage", imgObjs );
|
421
|
+
}
|
422
|
+
|
423
|
+
function findActionTab() {
|
424
|
+
var heads = g( "head" ).children;
|
425
|
+
for ( var i = 0, j; j = heads[i++]; ) {
|
426
|
+
var className = j.className;
|
427
|
+
if ( className == "act" ) {
|
428
|
+
return j.getAttribute( "name" );
|
429
|
+
}
|
430
|
+
}
|
431
|
+
return "";
|
432
|
+
}
|
433
|
+
|
434
|
+
//预加载图片
|
435
|
+
function preloadImg() {
|
436
|
+
|
437
|
+
var imgType = new RegExp( "/\.(png|gif|jpg|jpeg)$/ig" ),
|
438
|
+
urlFilter = "";
|
439
|
+
var url = g( "url" ).value, pimg, sourceSize,
|
440
|
+
preview = g( "preview" );
|
441
|
+
if ( !imgType.test( url ) && url.indexOf( urlFilter ) == -1 ) {
|
442
|
+
preview.innerHTML = "不正确的图片格式或者图片域!";
|
443
|
+
return;
|
444
|
+
}
|
445
|
+
preview.innerHTML = "图片加载中……";
|
446
|
+
//修正当修改地址时候img对象已经销毁的问题
|
447
|
+
if(!img){
|
448
|
+
img = document.createElement("img");
|
449
|
+
img.src = url;
|
450
|
+
}
|
451
|
+
img.onload = function() {
|
452
|
+
oWidth = this.width;
|
453
|
+
oHeight = this.height;
|
454
|
+
g("imgWidth").value = oWidth || "";
|
455
|
+
g("imgHeight").value = oHeight || "";
|
456
|
+
percent = (oWidth / oHeight).toFixed(2);
|
457
|
+
setPreview(this,330);
|
458
|
+
|
459
|
+
};
|
460
|
+
img.onerror = function() {
|
461
|
+
preview.innerHTML = "图片加载失败,请检查网络!";
|
462
|
+
img = null;
|
463
|
+
};
|
464
|
+
img.src = url;
|
465
|
+
}
|
466
|
+
|
467
|
+
//显示图片信息
|
468
|
+
function showImageInfo() {
|
469
|
+
//获取图片float方式
|
470
|
+
var align = editor.queryCommandValue( 'imagefloat' );
|
471
|
+
replaceImg( align );
|
472
|
+
if ( img.getAttribute( "word_img" ) ) {
|
473
|
+
g( "url" ).value = img.getAttribute( "word_img" ).replace( "&", "&" );
|
474
|
+
g( "msg" ).style.display = "";
|
475
|
+
} else {
|
476
|
+
//g("url").value = img.src.replace("&", "&");
|
477
|
+
g( "url" ).value = img.getAttribute( 'data_ue_src' ) || (editor.options.relativePath ?
|
478
|
+
img.getAttribute( "src", 2 ).replace( "&", "&" ) : img.src.replace( "&", "&" ));
|
479
|
+
}
|
480
|
+
g( "imgWidth" ).value = img.width;
|
481
|
+
g( "imgHeight" ).value = img.height;
|
482
|
+
g( "imgMargin" ).value = img.getAttribute( "vspace" ) || 0;
|
483
|
+
g( "imgBorder" ).value = img.getAttribute( "border" ) || 0;
|
484
|
+
g( "imgTitle" ).value = img.title;
|
485
|
+
setPreview( img, 330 );
|
486
|
+
percent = (img.width / img.height).toFixed( 2 );
|
487
|
+
}
|
488
|
+
|
489
|
+
function setPreview( img, max ) {
|
490
|
+
var tmp = img.cloneNode( true );
|
491
|
+
tmp.width = img.width;
|
492
|
+
tmp.height = img.height;
|
493
|
+
scale( tmp, max );
|
494
|
+
g( "preview" ).innerHTML = '<img src="' + (editor.options.relativePath ? tmp.getAttribute( "src" ) : tmp.src) + '" width="' + img.width + '" height="' + img.height + '" border="' + img.style.border + '" />';
|
495
|
+
}
|
496
|
+
//更改float的提示图标
|
497
|
+
function replaceImg( str ) {
|
498
|
+
var imgs = g( "singleFloat" ).children;
|
499
|
+
for ( var i = 0, j; j = imgs[i++]; ) {
|
500
|
+
imgs[0].src = imgs[0].src.replace( "_focus.jpg", ".jpg" )
|
501
|
+
}
|
502
|
+
for ( var i = 0, j; j = imgs[i++]; ) {
|
503
|
+
if ( j.getAttribute( "name" ) == str ) {
|
504
|
+
j.src = j.src.replace( ".jpg", "_focus.jpg" );
|
505
|
+
break;
|
506
|
+
}
|
507
|
+
}
|
508
|
+
}
|
509
|
+
|
510
|
+
/*-=-=-=-=-=-=-=批量上传控制模块-=-=-=-=-=-=-*/
|
511
|
+
function upload() {
|
512
|
+
flashObj.upload();
|
513
|
+
g( "start" ).style.display = "none";
|
514
|
+
}
|
515
|
+
/**
|
516
|
+
* 选择文件后的回调函数
|
517
|
+
* @param selectFiles
|
518
|
+
*/
|
519
|
+
function selectFileCallback( selectFiles ) {
|
520
|
+
//if(console)console.log("开始选择文件:");
|
521
|
+
imageCount += selectFiles.length;
|
522
|
+
g( "start" ).style.display = "";
|
523
|
+
g( "start" ).onclick = upload;
|
524
|
+
dialog.buttons[0].setDisabled( true ); //初始化时置灰确定按钮
|
525
|
+
|
526
|
+
}
|
527
|
+
/**
|
528
|
+
* 单个文件上传完成的回调函数
|
529
|
+
* @param Object/String 服务端返回啥,参数就是啥
|
530
|
+
*/
|
531
|
+
function uploadCompleteCallback( data ) {
|
532
|
+
//debugger
|
533
|
+
//if(console)console.log("上传成功", data);
|
534
|
+
var info = eval( "(" + data.info + ")" );
|
535
|
+
info && imageUrls.push( info );
|
536
|
+
imageCount--;
|
537
|
+
}
|
538
|
+
|
539
|
+
//全部上传完成的回调函数
|
540
|
+
function allCompleteCallback() {
|
541
|
+
//console.log("全部上传成功");
|
542
|
+
dialog.buttons[0].setDisabled( false ); //上传完毕后点亮按钮
|
543
|
+
}
|
544
|
+
/**
|
545
|
+
* 删除文件后的回调函数
|
546
|
+
* @param Array
|
547
|
+
*/
|
548
|
+
function deleteFileCallback( delFiles ) {
|
549
|
+
// 数组里单个元素为Object,{index:在多图上传的索引号, name:文件名, size:文件大小}
|
550
|
+
// 其中size单位为Byte
|
551
|
+
imageCount -= delFiles.length;
|
552
|
+
if ( imageCount == 0 ) {
|
553
|
+
g( "start" ).style.display = "none";
|
554
|
+
dialog.buttons[0].setDisabled( false ); //上传完毕后点亮按钮
|
555
|
+
}
|
556
|
+
}
|
557
|
+
|
558
|
+
|
559
|
+
/*-=-=-=-=-=-=-=公共方法模块-=-=-=-=-=-=-*/
|
560
|
+
function g( id ) {
|
561
|
+
return document.getElementById( id );
|
562
|
+
}
|
563
|
+
function isNumber( n ) {
|
564
|
+
return /^[1-9]\d*$/.test( n );
|
565
|
+
}
|
566
|
+
/**
|
567
|
+
* 等比例缩放图片
|
568
|
+
* @param img
|
569
|
+
* @param max
|
570
|
+
*/
|
571
|
+
function scale( img, max ) {
|
572
|
+
var width = 0, height = 0, percent;
|
573
|
+
img.sWidth = img.width;
|
574
|
+
img.sHeight = img.height;
|
575
|
+
if ( img.width > max || img.height > max ) {
|
576
|
+
if ( img.width >= img.height ) {
|
577
|
+
if ( width = img.width - max ) {
|
578
|
+
percent = (width / img.width).toFixed( 2 );
|
579
|
+
img.height = img.height - img.height * percent;
|
580
|
+
img.width = max;
|
581
|
+
}
|
582
|
+
} else {
|
583
|
+
if ( height = img.height - max ) {
|
584
|
+
percent = (height / img.height).toFixed( 2 );
|
585
|
+
img.width = img.width - img.width * percent;
|
586
|
+
img.height = max;
|
587
|
+
}
|
588
|
+
}
|
589
|
+
}
|
590
|
+
}
|
591
|
+
function imgselect( simg ) {
|
592
|
+
var childs = simg.parentNode.children;
|
593
|
+
for ( var i = 0, child; child = childs[i++]; ) {
|
594
|
+
if ( /img/ig.test( child.tagName ) ) {
|
595
|
+
child.src = child.src.replace( "_focus.jpg", ".jpg" );
|
596
|
+
}
|
597
|
+
}
|
598
|
+
simg.src = simg.src.replace( ".jpg", "_focus.jpg" );
|
599
|
+
}
|
600
|
+
//获取id下选中图片的name
|
601
|
+
function getAlign( id ) {
|
602
|
+
var imgs = g( id ).children;
|
603
|
+
for ( var i = 0, img; img = imgs[i++]; ) {
|
604
|
+
if ( img.src.indexOf( "_focus" ) != -1 ) {
|
605
|
+
break;
|
606
|
+
}
|
607
|
+
}
|
608
|
+
return i != imgs.length + 1 ? img.name : 'none';
|
609
|
+
}
|
610
|
+
|
611
|
+
var imgWidth = g( "imgWidth" ),
|
612
|
+
imgHeight = g( "imgHeight" ),
|
613
|
+
zoom = g( 'zoom' );
|
614
|
+
|
615
|
+
imgWidth.onkeyup = function () {
|
616
|
+
if ( !isNaN( this.value ) && zoom.checked ) {
|
617
|
+
imgHeight.value = Math.round( this.value / percent ) || this.value;
|
618
|
+
}
|
619
|
+
};
|
620
|
+
imgHeight.onkeyup = function () {
|
621
|
+
if ( !isNaN( this.value ) && zoom.checked ) {
|
622
|
+
imgWidth.value = Math.round( this.value * percent ) || this.value;
|
623
|
+
}
|
624
|
+
}
|
625
|
+
|
626
|
+
</script>
|
627
|
+
</body>
|
628
|
+
</html>
|