Pregunta Carácter ">" (& rsaquo;) rompiendo angular en IE11


Tengo un problema al usar un personaje en IE11. Se está utilizando en una plantilla de jade en una directiva angular, y solo es un problema en IE11.

Tengo dos etiquetas span, la primera contiene el carácter ">" y la siguiente contiene {{var}}. La variable se está imprimiendo literalmente como "{{var}}" en el navegador en lugar de "val", pero cuando cambio el contenido del primer tramo a cualquier otra cosa, {{var}} se muestra bien como "val".

He intentado usar la entidad HTML (›) y todavía lo rompe. He intentado varias otras entidades HTML y funcionan muy bien.

Parece que es un problema con este personaje específico. ¿Alguien sabe a que se debe esto?

Aquí está el código:

span.rsaquo  ›
span.subcategory  {{ category.subname }}

Aquí está el resultado:

enter image description here


9
2018-04-03 21:38


origen


Respuestas:


He visto este problema utilizando el carácter de corchete de doble ángulo directamente en mi código. También he encontrado que es cuando se usa el personaje ndash. La solución que encontré fue utilizar el atributo ng-bind-template en cualquier lugar en el que desee utilizar estos divertidos personajes.

<span ng-bind-template="rsaquo >">
    <span>{{category.subname}}</span>
</span>

o

<span ng-bind-template="rsaquo >">
    <span ng-bind="category.subname"></span>
</span>

El problema subyacente es que IE detiene el procesamiento de javascript en los elementos DOM con estos caracteres (aunque no estoy seguro de por qué). Está enmarcado en arena solo al elemento que contiene ese personaje, así como a cualquier niño.

Solo ocurre si el personaje aparece directamente en el HTML mientras se carga la página. Es por eso que si lo pones en la directiva ng-bind-template, IE no lo ve hasta que todo se haya cargado y haya procesado todo.


3
2018-05-13 18:02



span.rsaquo  ›

Tienes un espacio Pruebe sin dar espacio así:

span.rsaquo›

0
2018-05-25 05:05