Así que estoy usando la función AJAX de jQuery para leer algo de XML para mí y funcionó bien. Pero ahora estoy tratando de manipular la propiedad de visualización de 4 diferentes divs generados dinámicamente cuando se desencadena el mouseup a partir de elementos de opción. El tamaño y x/y de los divs están determinados por el XML y se analizan a través de.jQuery .append() no funciona en IE, Safari y Chrome
Mi problema radica en el hecho de que estos divs no se generan o simplemente no se muestran en IE, Safari y Chrome. En Firefox y Opera, funcionan. Estoy utilizando .append() de jQuery para crear los divs y luego la función .css() para manipularlos. Al examinar las herramientas para desarrolladores de Chrome, veo que la propiedad en la hoja de estilos está anulando la propiedad css que se está modificando en el script. ¿Alguna solución?
Divs creado aquí:
case "dynamic":
var n = name;
switch(portion){
case "stub":
$('.ticket').append("<div class='stubEditable' id='"+n+"' title='stub'></div>");
break;
case "body":
$('.ticket').append("<div class='bodyEditable' id='"+n+"' title='body'></div>");
break;
}
break;
case "static":
var n = name;
switch(portion){
case "stub":
$('.ticket').append("<div class='stubEditable' id='"+n+"' title='stub'></div>");
break;
case "body":
$('.ticket').append("<div class='bodyEditable' id='"+n+"' title='body'></div>");
break;
}
break;
funciones mouseUp que cambian la propiedad de presentación:
$('#StubTemplates').find('.ddindent').mouseup(function(){
var tVal = $(this).val();
var tTitle = $(this).attr('title');
if(!stubActive){
$('.stubEditable').css('display', 'none');
$('#'+tVal).css('display', 'block');
stubActive = true;
}else{
$('.stubEditable').css('display', 'none');
$('#'+tVal).css('display', 'block');
stubActive = false;
}
});
$('#StubTemplates').find('#stubTempNone').mouseup(function(){
$('.stubEditable').css('display', 'none');
});
$('#BodyTemplates').find('.ddindent').mouseup(function(){
var tVal = $(this).val();
var tTitle = $(this).attr('title');
if(!bodyActive){
$('.bodyEditable').css('display', 'none');
$('#'+tVal).css('display', 'block');
bodyActive = true;
}else{
$('.bodyEditable').css('display', 'none');
$('#'+tVal).css('display', 'block');
bodyActive = false;
}
});
$('#BodyTemplates').find('#bodyTempNone').mouseup(function(){
$('.bodyEditable').css('display', 'none');
});
De todos modos, ¿puede recortar ese fragmento de código a un ejemplo escueto de lo que está causando el problema? ¿O al menos proporcionar información sobre los identificadores/clases exactos que están causando el problema? Cualquier formato que pueda hacer para limpiar ese fragmento también sería útil. Aclamaciones. – malonso
De acuerdo, lo recorté todo lo que pude. –
'$ ('#' + tVal)' ugh. ¿Alguien ha oído hablar de 'document.getElementById (tval)'? El jQuery hash-annexing id-getter es tan frecuente en la Web ... pero es tan lento y pesado. –