2015-12-03 54 views
0

對於HTML畫布路徑,我試圖從Joel Besada實現jQuery Scrollpath plugin--這很順利,直到我試圖查看有關使路徑變成虛線。setLineDash()與jQuery滾動路徑插件不兼容

我在網上找到了setLineDash()的文檔,在調用stroke()之前,它看起來像只是將它與其他2D上下文線樣式一起添加進去,所以我在jquery.scrollpath.js文件中更改了該節並添加了在我所有的其他線型自定義,但沒有運氣。

我已經成立了一個CodePen這裏與喬爾的demo源代碼:

我說的唯一的事情就是線391到Scrollpath插件在JS窗格:

context.setLineDash([50,3]); 

任何思考爲什麼不會工作?

+0

它的工作,只是讓你的段比'lineWidth'更多的空間,否則你就不會看到它。 (在你的例子中是10,而5的差距比它小)http://codepen.io/anon/pen/vLBVyx – Kaiido

+0

太棒了,謝謝! – valo

+0

ps,它實際上是由於'setLineCap(round)',它會將strokewidth添加到路徑段的末尾和開始處 – Kaiido

回答

0

setLineDash更常見的錯誤是將破折號之間的間隔設置得太短。

瀟灑當你不得不去想的linecap:

enter image description here

灰色破折號之後的線部分是完全筆畫寬度的一半。

因此,如果您正在劃定一條線條的行程寬度爲50,那麼如果您使用的是strokeCap 'square''round',則間隙爲51是最小間隔爲1個白色像素。

如果您在第一個示例中使用'butt',則任何間隙都將可見。