ArthurHub / ArthurHub/HTML-Renderer

Super slow performance when there are lots of "a" html tags

Ouverte
#239 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
bug HTML
Langage dominant
C#
Étoiles
1.4k
Forks
550
Merge moyen
14 j 9 h
PR mergées (30 j)
1

Description

I am displaying an HTML, having about 200 **a** tags, the initial load and display of html is super slow.

When I modify **IsBlockAssignableToBox** function, so it does not add **a** tags, the performance issue is resolved ( and offcourse a tags are not rendered as links)

modifed **IsBlockAssignableToBox** version :

```
private static bool IsBlockAssignableToBox(CssBox box, CssBlock block)
{
bool assignable = true;
if (block.Selectors != null)
{
assignable = IsBlockAssignableToBoxWithSelector(box, block);
}
else if (box.HtmlTag.Name.Equals("a", StringComparison.OrdinalIgnoreCase) && block.Class.Equals("a", StringComparison.OrdinalIgnoreCase)
// && !box.HtmlTag.HasAttribute("href")
)
{
assignable = false;
}

if (assignable && block.Hover)
{
box.HtmlContainer.AddHoverBox(box, block);
assignable = false;
}

return assignable;
}
```

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Commencez par profiler la fonction IsBlockAssignableToBox lors du chargement d’un document HTML contenant environ 200 balises a, puis comparez le chemin normal avec la modification signalée. C’est terminé lorsque le document affiche les liens sans le ralentissement important du chargement initial ; l’issue ne nomme aucun fichier de test ou de code source au-delà de cette fonction.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
csharp, html
Domaine
frontend, performance
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.