.html () jQuery método bizzare bug - resolve espaço vazio localmente, mas não sobre a produção

StackOverflow https://stackoverflow.com/questions/147976

Pergunta

Eu estou fazendo um simples comando jQuery:

element.html("                 ");

usando os atributos / html método: http://docs.jquery.com/Attributes/html

Ele funciona no meu servidor app engine local, mas ele não funciona uma vez que eu empurrar para o servidor do Google. As embalagens vazias elemento, mas não preenche com espaços.

Então, ao invés de " " (6 lugares) é apenas "".

Mais uma vez, este está em execução no App Engine, mas eu não acho que isso deveria importar ...

Foi útil?

Solução

Você poderia tentar gerar o espaço durante o tempo de execução, por isso não vai ser cortado ou o que acontece durante o transporte:

element.html(String.fromCharCode(32));

Outras dicas

Isto pode não ser uma resposta direta para o seu problema, mas por que você está mesmo querendo colocar em um monte de espaços? Provavelmente, você pode conseguir o mesmo resultado apenas mudando o padding-left ou text-indent desse elemento.

element.css("textIndent", "3em");

Usando um monte de  s é uma maneira muito desertor fazer recuo.

Seu jQuery deve ficar assim:

$('element').html('  ');

... onde ' ' é igual a uma vez espaço.

(com no entanto muitos espaços que você quer, é claro)

Você já tentou usar   em vez de espaços? O método html() apenas bombeia a cadeia para o InnerHTML do elemento (s).

Existe uma possibilidade de que o código é minified como parte do processo de ser implantado para o App Engine?

Eu não esperaria que qualquer seqüência de espaços em branco a ser retida como está escrito, talvez você poderia realmente escapar do espaço em branco e forçar qualquer minification deixá-lo:

exemplo:

element.html('\ \ \ \ \ \ \ \ \ \ \ \ ');
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top