apiEx.js 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. (function(TQE){
  2. if(!TQE){ throw('必须先加载 TQEditor.js '); return ;}
  3. var pe=TQE.prototype;
  4. //接口, 取得编辑器的所有图片,返值为数组['image_1_src_url','image_2_src_url']
  5. //参数 full_uri 是否是取完整的uri
  6. pe.images=function(full_uri){
  7. var $=this, result=[],htm='',doc=$._getDoc(),a,i;
  8. if('code'===$.currentMode()){
  9. return result;
  10. //htm=$.content();
  11. }
  12. a=doc.getElementsByTagName('IMG');
  13. for(i=0;i<a.length;i++){
  14. result.push(full_uri ? a[i].src : a[i].getAttribute('src'));
  15. }
  16. return result;
  17. };
  18. //接口, 取得编辑器的所有flash,返值为数组
  19. pe.flashs=function(){
  20. var $=this, result=[],htm='',doc=$._getDoc(),a,i;
  21. if('code'===$.currentMode()){
  22. return result;
  23. //htm=$.content();
  24. }
  25. a=doc.getElementsByTagName('EMBED');
  26. for(i=0;i<a.length;i++){
  27. if(a[i].getAttribute('type').toLowerCase().indexOf('shockwave-flash')<0 ||
  28. a[i].getAttribute('flashvars').toLowerCase().indexOf('.flv')) continue;
  29. result.push(full_uri ? a[i].src : a[i].getAttribute('src'));
  30. }
  31. return result;
  32. };
  33. //接口, 取得编辑器的所有flv,返值为数组
  34. pe.flvs=function(){
  35. var $=this, result=[],htm='',doc=$._getDoc(),a,i;
  36. if('code'===$.currentMode()){
  37. return result;
  38. //htm=$.content();
  39. }
  40. a=doc.getElementsByTagName('EMBED');
  41. for(i=0;i<a.length;i++){
  42. if(a[i].getAttribute('flashvars').toLowerCase().indexOf('vcastr_file')<0) continue;
  43. /vcastr_file=([^\"& ]+)/i.exec(a[i].getAttribute('flashvars'));
  44. if(RegExp.$1)result.push(RegExp.$1);
  45. }
  46. return result;
  47. };
  48. //删除所有链接, 参数是回调函数, 返值表示是否允许删除
  49. pe.removeLinks=function(callback){
  50. var $=this, doc=$._getDoc(),a,i,r;
  51. if('code'===$.currentMode()){
  52. return ;
  53. //htm=$.content();
  54. }
  55. a=doc.getElementsByTagName('A');
  56. if('function'===typeof callback){
  57. for(i=a.length-1;i>=0;i--){
  58. r=callback(a[i].getAttribute('href'))
  59. if(r)TQE.removeNode(a[i], false);
  60. }
  61. }else{
  62. for(i=a.length-1;i>=0;i--){
  63. TQE.removeNode(a[i], false);
  64. }
  65. }
  66. return ;
  67. };
  68. //删除所有图片, 参数是回调函数, 返值表示是否允许删除
  69. pe.removeImages=function(callback){
  70. var $=this, doc=$._getDoc(),a,i,r;
  71. if('code'===$.currentMode()){
  72. return ;
  73. //htm=$.content();
  74. }
  75. a=doc.getElementsByTagName('IMG');
  76. if('function'===typeof callback){
  77. for(i=a.length-1;i>=0;i--){
  78. r=callback(a[i].getAttribute('src'))
  79. if(r)TQE.removeNode(a[i], false);
  80. }
  81. }else{
  82. for(i=a.length-1;i>=0;i--){
  83. TQE.removeNode(a[i], false);
  84. }
  85. }
  86. return ;
  87. };
  88. //删除所有图片, 参数是回调函数, 返值表示是否允许删除
  89. pe.removeFlashs=function(callback){
  90. var $=this, doc=$._getDoc(),a,i,r;
  91. if('code'===$.currentMode()){
  92. return ;
  93. //htm=$.content();
  94. }
  95. a=doc.getElementsByTagName('EMBED');
  96. if('function'===typeof callback){
  97. for(i=a.length-1;i>=0;i--){
  98. r=callback(a[i].getAttribute('src'))
  99. if(r)TQE.removeNode(a[i], false);
  100. }
  101. }else{
  102. for(i=a.length-1;i>=0;i--){
  103. TQE.removeNode(a[i], false);
  104. }
  105. }
  106. return ;
  107. };
  108. //删除所有Object对象
  109. pe.removeObjects=function(){
  110. var $=this, doc=$._getDoc(),a,i,r;
  111. if('code'===$.currentMode()){
  112. return ;
  113. //htm=$.content();
  114. }
  115. a=doc.getElementsByTagName('OBJECT');
  116. for(i=a.length-1;i>=0;i--){
  117. TQE.removeNode(a[i], false);
  118. }
  119. };
  120. })(window.TQE);