Что корректный путь состоит в том, чтобы записать HTML с помощью JavaScript?

Этот код делает имя перевода к Color класс быстрее:

public class FastNameToColor
{
    Dictionary<string, Color> Data = new Dictionary<string, Color>();

    public FastNameToColor()
    {
        System.Reflection.PropertyInfo[] lColors = typeof(System.Drawing.Color).GetProperties();

        foreach (PropertyInfo pi in lColors)
        {
            object val = pi.GetValue(null, null);
            if (val is Color)
            {
                Data.Add(pi.Name, (Color)val);
            }
        }
    }

    public Color GetColor(string Name)
    {
        return Data[Name];
    }
}

можно развернуть этот код для перевода имени к Media.Color непосредственно.

63
задан Gary Willoughby 7 October 2009 в 19:09
поделиться

10 ответов

document.write () будет работать только во время первоначального анализа страницы и создания DOM. Когда браузер переходит к закрывающему тегу и DOM готова, вы больше не можете использовать document.write () .

Я бы не сказал использование document.write () является правильным или неправильным, это просто зависит от вашей ситуации. В некоторых случаях вам просто нужно иметь document.write () для выполнения задачи. Посмотрите, как Google Analytics внедряется в большинство веб-сайтов.

После того, как DOM будет готов, у вас есть два способа вставить динамический HTML (при условии, что мы собираемся вставить новый HTML в

< / div> ):

  1. Использование innerHTML на узле:

     var node = document.getElementById ('node-id');
    node.innerHTML ('

    какой-то динамический HTML

    ');
  2. Использование методов DOM:

     var node = document.getElementById ('node-id');
    var newNode = document.createElement ('p');
    newNode.appendChild (document.createTextNode ('какой-то динамический html'));
    node.appendChild (новыйNode);
    

Использование методов DOM API может быть пуристическим способом решения задач, но innerHTML оказался намного быстрее и используется в библиотеках JavaScript, таких как jQuery.

Примечание: Чтобы это работало,