Skip to content

Commit 23cb886

Browse files
committed
Merge pull request kpdecker#119 from wifiextender/master
Do single reflow
2 parents 2e59e39 + 87d1793 commit 23cb886

File tree

2 files changed

+24
-13
lines changed

2 files changed

+24
-13
lines changed

README.md

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -156,23 +156,28 @@ Basic example in a web page
156156
<pre id="display"></pre>
157157
<script src="diff.js"></script>
158158
<script>
159-
var one = 'beep boop';
160-
var other = 'beep boob blah';
159+
var one = 'beep boop',
160+
other = 'beep boob blah',
161+
color = '',
162+
span = null;
161163
162-
var diff = JsDiff.diffChars(one, other);
163-
var display = document.getElementById('display');
164+
var diff = JsDiff.diffChars(one, other),
165+
display = document.getElementById('display'),
166+
fragment = document.createDocumentFragment();
164167
165168
diff.forEach(function(part){
166169
// green for additions, red for deletions
167170
// grey for common parts
168-
var color = part.added ? 'green' :
171+
color = part.added ? 'green' :
169172
part.removed ? 'red' : 'grey';
170-
var span = document.createElement('span');
173+
span = document.createElement('span');
171174
span.style.color = color;
172175
span.appendChild(document
173176
.createTextNode(part.value));
174-
display.appendChild(span);
177+
fragment.appendChild(span);
175178
});
179+
180+
display.appendChild(fragment);
176181
</script>
177182
```
178183

examples/web_example.html

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,28 @@
11
<pre id="display"></pre>
22
<script src="../dist/diff.js"></script>
33
<script>
4-
var one = 'beep boop';
5-
var other = 'beep boob blah';
4+
var one = 'beep boop',
5+
other = 'beep boob blah',
6+
color = '',
7+
span = null;
68

7-
var diff = JsDiff.diffChars(one, other);
9+
var diff = JsDiff.diffChars(one, other),
10+
display = document.getElementById('display'),
11+
fragment = document.createDocumentFragment();
812

913
diff.forEach(function(part){
1014
// green for additions, red for deletions
1115
// grey for common parts
12-
var color = part.added ? 'green' :
16+
color = part.added ? 'green' :
1317
part.removed ? 'red' : 'grey';
14-
var span = document.createElement('span');
18+
span = document.createElement('span');
1519
span.style.color = color;
1620
span.appendChild(document
1721
.createTextNode(part.value));
18-
display.appendChild(span);
22+
fragment.appendChild(span);
1923
});
24+
25+
display.appendChild(fragment);
2026
</script>
2127
<style>
2228
#result { word-wrap: break-word; }

0 commit comments

Comments
 (0)