diff --git a/core/src/main/resources/org/apache/spark/ui/static/spark-dag-viz.js b/core/src/main/resources/org/apache/spark/ui/static/spark-dag-viz.js
index eb9cf50055cb7e3ffa34b72d571f211f0e3a9d8a..76eb2c464139f3d921ba1dbbb89be94928ae8a25 100644
--- a/core/src/main/resources/org/apache/spark/ui/static/spark-dag-viz.js
+++ b/core/src/main/resources/org/apache/spark/ui/static/spark-dag-viz.js
@@ -333,10 +333,10 @@ function drawCrossStageEdges(edges, svgContainer) {
     connectRDDs(fromRDDId, toRDDId, edgesContainer, svgContainer);
   }
   // Now draw the arrows by borrowing the arrow marker generated by dagre-d3
-  var dagreD3Marker = svgContainer.select("g.edgePaths marker").node();
+  var dagreD3Marker = svgContainer.select("g.edgePaths marker");
   if (!dagreD3Marker.empty()) {
     svgContainer
-      .append(function() { return dagreD3Marker.cloneNode(true); })
+      .append(function() { return dagreD3Marker.node().cloneNode(true); })
       .attr("id", "marker-arrow")
     svgContainer.selectAll("g > path").attr("marker-end", "url(#marker-arrow)");
     svgContainer.selectAll("g.edgePaths def").remove(); // We no longer need these