Foros del Web » Programando para Internet » Javascript »

Funcion no se ejecuta en Internet Explorer

Estas en el tema de Funcion no se ejecuta en Internet Explorer en el foro de Javascript en Foros del Web. Veran tengo esta funcion @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código Javascript : Ver original function html2bbcode ( data ) {     if ( ! data ) { ...
  #1 (permalink)  
Antiguo 29/07/2011, 17:03
Avatar de ColdFusion  
Fecha de Ingreso: octubre-2008
Ubicación: Tocoa, Colon Honduras C.A.
Mensajes: 419
Antigüedad: 16 años, 1 mes
Puntos: 9
Funcion no se ejecuta en Internet Explorer

Veran tengo esta funcion
Código Javascript:
Ver original
  1. function html2bbcode(data) {
  2.     if (!data) { return ''; }
  3.     // unwanted breaklines
  4.     data = data.replace(/\n|\r/g, '');
  5.  
  6.     // code
  7.     data = data.replace(
  8.         new RegExp('<(?:pre|code)>([^]*?)<\\\/(?:pre|code)>', 'g'),
  9.         function (match, _1) {
  10.             return '[code]' + strip_tags(_1, '<br><br/><br />') + '[/code]'
  11.         }
  12.     );
  13.     // quotes
  14.     data = data.replace(
  15.         new RegExp('<blockquote><div class="cita"><strong>([^]*?)<\\\/strong> dijo:<\\\/div>', 'g'),
  16.         '[quote=$1]'
  17.     );
  18.     do {
  19.         original = data;
  20.         data = data.replace(
  21.             new RegExp('<div class="citacuerpo">(?:<p>)?([^]*?)(?:<\\\/p>)<\\\/div><\\\/blockquote>', 'g'),
  22.             function (m, _1) {
  23.                 if (_1.match(new RegExp('<div class="citacuerpo">(?:<p>)?([^]*?)(?:<\\\/p>)<\\\/div><\\\/blockquote>'))) {
  24.                     return m;
  25.                 } else {
  26.                     return _1 + '[/quote]';
  27.                 }
  28.             }
  29.         );
  30.     } while (original != data);
  31.     // swf
  32.     data = data.replace(
  33.         new RegExp('(?:<br>)?(?:<center>)?<embed src="([^]*?)"(.*?)>(?:<\\\/embed>)?(?:<\\\/center>)?', 'g'),
  34.         '[swf=$1]'
  35.     );
  36.     // images
  37.     data = data.replace(/<img\s[^<>]*?src=\"?([^<>]*?)\"?(\s[^<>]*)?\/?>/gi, '[img]$1[/img]');
  38.     // strong
  39.     data = data.replace(/<(strong|b)(\s[^<>]*)?>/gi, '[b]');
  40.     data = data.replace(/<\/(strong|b)>/gi, '[/b]');
  41.     // italic
  42.     data = data.replace(/<(em|i)(\s[^<>]*)?>/gi, '[i]');
  43.     data = data.replace(/<\/(em|i)>/gi, '[/i]');
  44.     // underline
  45.     data = data.replace(/<u(\s[^<>]*)?>/gi, '[u]');
  46.     data = data.replace(/<\/u>/gi, '[/u]');
  47.    
  48.     data = data.replace(/<ul(\s[^<>]*)?>/gi, '[ul]');
  49.     data = data.replace(/<\/ul>/gi, '[/ul]');
  50.    
  51.     data = data.replace(/<li(\s[^<>]*)?>/gi, '[li]');
  52.     data = data.replace(/<\/li>/gi, '[/li]');
  53.    
  54.     // cleanup & pre processing
  55.     data = data.replace(/<div><br(\s[^<>]*)?>/gi, '<div>');
  56.     data = data.replace(/<br(\s[^<>]*)?>/gi, '\n');
  57.     data = data.replace(/<p(\s[^<>]*)?>/gi, '');
  58.     data = data.replace(/<\/p>/gi, '\n');
  59.     data = data.replace(/<\/div>\s*<div([^<>]*)>/gi, '</span>\n<span$1>');
  60.     data = data.replace(/<div([^<>]*)>/gi, '\n<span$1>');
  61.     data = data.replace(/<\/div>/gi, '</span>\n');
  62.     data = data.replace(/&nbsp;/gi, ' ');
  63.     data = data.replace(/&quot;/gi, '\"');
  64.     data = data.replace(/&amp;/gi, '&');
  65.     var sc, sc2;
  66.     do {
  67.         sc = data;
  68.         // font tag (eew!) color
  69.         data = data.replace(/<font\s[^<>]*?color=\"?([^<>]*?)\"?(\s[^<>]*)?>([^<>]*?)<\/font>/gi, '[color=$1]$3[/color]');     
  70.         // ...and size
  71.         data = data.replace(
  72.             /<font\s[^<>]*?size=\"?([^<>]*?)\"?(\s[^<>]*)?>([^<>]*?)<\/font>/gi,
  73.             function (m, _1, _2, _3) {
  74.                 return '[size=' +_1 + ']' + _3 + '[/size]';
  75.             }
  76.         );
  77.         // font tag cleanup
  78.         if(sc == data) {
  79.             data = data.replace(/<font[^<>]*>([^<>]*?)<\/font>/gi, '$1');
  80.         }
  81.         data = data.replace(/<a\s[^<>]*?href=\"?([^<>]*?)\"?(\s[^<>]*)?>([^<>]*?)<\/a>/gi, '[url=$1]$3[/url]');
  82.         sc2 = data;
  83.         data = data.replace(/<(span|blockquote|pre)\s[^<>]*?style=\"?font-weight: ?bold;?\"?\s*([^<]*?)<\/\1>/gi, '[b]<$1 style=$2</$1>[/b]');
  84.         data = data.replace(/<(span|blockquote|pre)\s[^<>]*?style=\"?font-weight: ?normal;?\"?\s*([^<]*?)<\/\1>/gi, '<$1 style=$2</$1>');
  85.         data = data.replace(/<(span|blockquote|pre)\s[^<>]*?style=\"?font-style: ?italic;?\"?\s*([^<]*?)<\/\1>/gi, '[i]<$1 style=$2</$1>[/i]');
  86.         data = data.replace(/<(span|blockquote|pre)\s[^<>]*?style=\"?font-style: ?normal;?\"?\s*([^<]*?)<\/\1>/gi, '<$1 style=$2</$1>');
  87.         data = data.replace(/<(span|blockquote|pre)\s[^<>]*?style=\"?text-decoration: ?underline;?\"?\s*([^<]*?)<\/\1>/gi, '[u]<$1 style=$2</$1>[/u]');
  88.         data = data.replace(/<(span|blockquote|pre)\s[^<>]*?style=\"?text-decoration: ?none;?\"?\s*([^<]*?)<\/\1>/gi, '<$1 style=$2</$1>');
  89.         data = data.replace(/<(span|blockquote|pre)\s[^<>]*?style=\"?color: ?([^<>]*?);\"?\s*([^<]*?)<\/\1>/gi, '[color=$2]<$1 style=$3</$1>[/color]');
  90.         data = data.replace(/<(span|blockquote|pre)\s[^<>]*?style=\"?font-family: ?([^<>]*?);\"?\s*([^<]*?)<\/\1>/gi, '[font=$2]<$1 style=$3</$1>[/font]');
  91.         // alignment
  92.         data = data.replace(/<(span|blockquote|pre|p)\s[^<>]*?style=\"?text-align: ?([^<>]*?);\"?\s*([^<]*?)<\/\1>/gi, '[align=$2]<$1 style=$3</$1>[/align]');
  93.         data = data.replace(
  94.             /<(span|blockquote|pre)\s[^<>]*?style=\"?font-size: ?([^<>]*?);\"?\s*([^<]*?)<\/\1>/gi,
  95.             function (m, _1, _2, _3) {
  96.                 return '[size=' + parseInt(_2) + ']<' + _1 + ' style=' + _3 + '</' + _1 + '>[/size]';
  97.             }
  98.         );
  99.         data = data.replace(/<(blockquote|pre)\s[^<>]*?style=\"?\"? (class=|id=)([^<>]*)>([^<>]*?)<\/\1>/gi, '<$1 $2$3>$4</$1>');
  100.         data = data.replace(/<span\s[^<>]*?style=\"?\"?>([^<>]*?)<\/span>/gi, '$1');
  101.         if(sc2 == data) {
  102.             data = data.replace(/<span[^<>]*>([^<>]*?)<\/span>/gi, '$1');
  103.             sc2 = data;
  104.         }
  105.     } while(sc != data);
  106.     data = data.replace(/<[^<>]*>/gi, '');
  107.     data = data.replace(/&lt;/gi, '<');
  108.     data = data.replace(/&gt;/gi, '>');
  109.     // childs against parents
  110.     /*do {
  111.         sc = data;
  112.         data = data.replace(/\[(b|i|u)\]\[quote([^\]]*)\]([\s\S]*?)\[\/quote\]\[\/\1\]/gi, '[quote$2][$1]$3[/$1][/quote]');
  113.         data = data.replace(/\[color=([^\]]*)\]\[quote([^\]]*)\]([\s\S]*?)\[\/quote\]\[\/color\]/gi, '[quote$2][color=$1]$3[/color][/quote]');
  114.         data = data.replace(/\[(b|i|u)\]\[code\]([\s\S]*?)\[\/code\]\[\/\1\]/gi, '[code][$1]$2[/$1][/code]');
  115.         data = data.replace(/\[color=([^\]]*)\]\[code\]([\s\S]*?)\[\/code\]\[\/color\]/gi, '[code][color=$1]$2[/color][/code]');
  116.     } while(sc != data);*/
  117.     do {
  118.         sc = data;
  119.         data = data.replace(/\[b\]\[\/b\]/gi, '');
  120.         data = data.replace(/\[i\]\[\/i\]/gi, '');
  121.         data = data.replace(/\[u\]\[\/u\]/gi, '');
  122.         data = data.replace(/\[quote[^\]]*\]\[\/quote\]/gi, '');
  123.         data = data.replace(/\[code\]\[\/code\]/gi, '');
  124.         data = data.replace(/\[url=([^\]]+)\]\[\/url\]/gi, '');
  125.         data = data.replace(/\[img\]\[\/img\]/gi, '');
  126.         data = data.replace(/\[color=([^\]]*)\]\[\/color\]/gi, '');
  127.     } while (sc != data);
  128.     return data;
  129. }

Funciona perfectamente en Firefox, pero en explorer no.

Alguien sabe cual es el problema?

Etiquetas: explorer, funcion, html, internet
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:23.