div にラップされた 3 つのスパンがあるとします。
<div>
<span>1/1/2000</span>
<span>-</span>
<span>1/2/2000</span>
</div>
ブラウザーは、結果の表示が次のようになるように、スパン間の改行を空白として解釈することになっています。
1/1/2000 - 1/2/2000
...これらのどれも好きではありません
1/1/2000-1/2/2000
1/1/2000- 1/2/2000
1/1/2000 -1/2/2000
...これは、スパンにノックアウト バインディングがない場合の IE8 の場合です。IE8 開発者ツールを使用して上記のマークアップを調べると、各スパンの後に" Text - Empty Text Node " が明確に表示されます。
<div>
<span>1/1/2000</span>
Text - Empty Text Node
<span>-</span>
Text - Empty Text Node
<span>1/2/2000</span>
Text - Empty Text Node
</div>
ただし、このようにスパンにノックアウト バインディングを配置するとすぐに、空のテキスト ノードの動作が変わります。
<div>
<span data-bind="text: start"></span>
<span data-bind="visible: end">-</span>
Text - Empty Text Node
<span data-bind="text: end"></span>
Text - Empty Text Node
</div>
... 最初の 2 つのスパンの間の空のテキスト ノードが削除されているように見えます。これはノックアウトバグですか?回避策はありますか?これはバージョン 2.3.0 を使用しています。