fiximgclick.js 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. module( 'plugins.fiximgclick' );
  2. test( 'webkit下图片可以被选中并出现八个角', function() {
  3. if ( ua.browser.webkit ) {
  4. var sc = document.createElement("script");
  5. sc.id="sc";
  6. sc.type = "text/plain";
  7. document.body.appendChild(sc);
  8. var editor = new UE.ui.Editor({'autoFloatEnabled':true,'topOffset':60,'autoHeightEnabled':true,'scaleEnabled':false});
  9. editor.render(sc.id);
  10. editor.ready(function () {
  11. editor.setContent( '<p>修正webkit下图片选择的问题<img src="" width="200" height="100" />修正webkit下图片选择的问题</p>' );
  12. var img = editor.body.getElementsByTagName( 'img' )[0];
  13. var p = editor.body.firstChild;
  14. ua.click( img );
  15. var range = editor.selection.getRange();
  16. ua.checkResult( range, p, p, 1, 2, false, '检查当前的range是否为img' );
  17. var scale = document.getElementById(editor.ui.id + '_scale');
  18. ok(scale && scale.style.display!='none', "检查八个角是否已出现");
  19. ok(img.style.width == scale.style.width && img.style.height == scale.style.height, "检查八个角和图片宽高度是否相等");
  20. UE.delEditor(sc.id);
  21. domUtils.remove(sc);
  22. start();
  23. });
  24. stop();
  25. }
  26. } );
  27. test( '鼠标在八个角上拖拽改变图片大小', function() {
  28. if ( ua.browser.webkit ) {
  29. var sc = document.createElement("script");
  30. sc.id="sc";
  31. sc.type = "text/plain";
  32. document.body.appendChild(sc);
  33. var editor = new UE.ui.Editor({'autoFloatEnabled':true,'topOffset':60,'autoHeightEnabled':true,'scaleEnabled':false});
  34. editor.render(sc.id);
  35. editor.ready(function () {
  36. editor.setContent( '<p>修正webkit下图片选择的问题<img src="" width="200" height="100" />修正webkit下图片选择的问题</p>' );
  37. var img = editor.body.getElementsByTagName( 'img' )[0];
  38. var p = editor.body.firstChild;
  39. ua.click( img );
  40. var scale = document.getElementById(editor.ui.id + '_imagescale');
  41. var hand0 = scale.children[0], width, height;
  42. width = parseInt(scale.style.width);
  43. height = parseInt(scale.style.height);
  44. ua.mousedown( hand0, {clientX: 322, clientY: 281} );
  45. ua.mousemove( document, {clientX: 352, clientY: 301} );
  46. equal(width-parseInt(scale.style.width), 30, "检查鼠标拖拽中图片宽度是否正确 --");
  47. equal(height-parseInt(scale.style.height), 20, "检查鼠标拖拽中图片高度是否正确 --");
  48. ua.mousemove( document, {clientX: 382, clientY: 321} );
  49. ua.mouseup( document, {clientX: 382, clientY: 321} );
  50. equal(width-parseInt(scale.style.width), 60, "检查鼠标拖拽完毕图片高度是否正确 --");
  51. equal(height-parseInt(scale.style.height), 40, "检查鼠标拖拽完毕图片高度是否正确 --");
  52. ok(img.style.width == scale.style.width && img.style.height == scale.style.height, "检查八个角和图片宽高度是否相等");
  53. UE.delEditor(sc.id);
  54. domUtils.remove(sc);
  55. start();
  56. });
  57. stop();
  58. }
  59. } );
  60. test( '鼠标点击图片外的其他区域时,八个角消失', function() {
  61. if ( ua.browser.webkit ) {
  62. var sc = document.createElement("script");
  63. sc.id="sc";
  64. sc.type = "text/plain";
  65. document.body.appendChild(sc);
  66. var editor = new UE.ui.Editor({'autoFloatEnabled':true,'topOffset':60,'autoHeightEnabled':true,'scaleEnabled':false});
  67. editor.render(sc.id);
  68. editor.ready(function () {
  69. editor.setContent( '<p>修正webkit下图片选择的问题<img src="" width="200" height="100" />修正webkit下图片选择的问题</p>' );
  70. var img = editor.body.getElementsByTagName( 'img' )[0];
  71. var p = editor.body.firstChild;
  72. ua.click( img );
  73. var scale = document.getElementById(editor.ui.id + '_imagescale'),
  74. cover = document.getElementById(editor.ui.id + '_imagescale_cover');
  75. ok(scale && scale.style.display!='none', "检查八个角是否已出现");
  76. ok(cover && cover.style.display!='none', "检查遮罩层是否已出现");
  77. ua.mousedown( editor.ui.getDom(), {clientX: 100, clientY: 100} );
  78. ok(cover && cover.style.display=='none', "检查遮罩层是否已消失");
  79. ok(scale && scale.style.display=='none', "检查八个角是否已消失");
  80. UE.delEditor(sc.id);
  81. domUtils.remove(sc);
  82. start();
  83. });
  84. stop();
  85. }
  86. } );
  87. test( '键盘有操作时,八个角消失', function() {
  88. if ( ua.browser.webkit ) {
  89. var sc = document.createElement("script");
  90. sc.id="sc";
  91. sc.type = "text/plain";
  92. document.body.appendChild(sc);
  93. var editor = new UE.ui.Editor({'autoFloatEnabled':true,'topOffset':60,'autoHeightEnabled':true,'scaleEnabled':false});
  94. editor.render(sc.id);
  95. editor.ready(function () {
  96. editor.setContent( '<p>修正webkit下图片选择的问题<img src="" width="200" height="100" />修正webkit下图片选择的问题</p>' );
  97. var img = editor.body.getElementsByTagName( 'img' )[0];
  98. var p = editor.body.firstChild;
  99. ua.click( img );
  100. var scale = document.getElementById(editor.ui.id + '_imagescale'),
  101. cover = document.getElementById(editor.ui.id + '_imagescale_cover');
  102. ok(scale && scale.style.display!='none', "检查八个角是否已出现");
  103. ok(cover && cover.style.display!='none', "检查遮罩层是否已出现");
  104. ua.keydown( editor.ui.getDom());
  105. ok(cover && cover.style.display=='none', "检查遮罩层是否已消失");
  106. ok(scale && scale.style.display=='none', "检查八个角是否已消失");
  107. UE.delEditor(sc.id);
  108. domUtils.remove(sc);
  109. start();
  110. });
  111. stop();
  112. }
  113. } );