Bien, he logrado externalizar la variable, lo extraño es que cuando se la asigno a la otra variable, veo resultados positivos con un alert o un console.log o llamándola directamente por el nombre desde la consola del navegador, pero en el software que debe detectar la variable no la toma.
Y lo extraño es que probé la misma fórmula en otra variable que tampoco me funcionaba y dio resultado, claro que esta última no tiene un document.ready, es la única diferencia, quizás sea por eso.
Les dejo como está actualmente:
Código:
var j = jQuery.noConflict();
var iframe = new Boolean;
j(document).ready(function() {
var vids = j('.col-ps iframe');
var urlIframe = vids.attr('src');
var regexxx = new RegExp("^.*"+ 'youtube|vimeo' +".*","gi"); //detecta si la src del iframe contiene las palabras youtube o vimeo
var imgs = j('.col-ps img');
if ( (vids != null) && (vids.length) ) {
if(urlIframe.match(regexxx)){
var iframe = true;
}else{
var iframe = false;
}
//else del primer if
}else{
var iframe = false;
}
//IF
if ((imgs != null && imgs.length) && (imgs.width() > 250) && (vids != null && vids.length) && (iframe == true) ){
multimedia = ('foto/video');
}else if (imgs != null && imgs.length && (imgs.width() > 250) ) {
multimedia = ('foto');
} else if (vids != null && vids.length && iframe == true) {
multimedia = ('video');
}else{
multimedia = ("");
}
mmedia();
});
y en la parte de las variables
Código:
function mmedia(){
s.prop30=multimedia;
}
No sé que pueda ser, pero por lo menos pasé el primer obstáculo.
Cualquier dato es bienvenido, desde ya muchas gracias.