In your code, I see no place where you check the "click left arrow" and "click right arrow" events, so it's normal that the #arrow
only moves on hover.
Add this bit of code at the end of your javascript (to handle the click events):
$('#sml-slider-container').on('click', '.flex-next, .flex-prev', function() {
$el = $('.flex-active-slide');
leftPos = $el.position().left;
$magicLine.stop().animate({
left: leftPos,
});
});
And you're done.
Working jsfiddle: http://jsfiddle.net/zNxdU/6/
(update: I forgot the . in .flex-prev
selector. Updated my answer and the fiddle)