szurubooru/client/html/score.tpl
rr- d5e197e6ea client/general: add empty href for link buttons
In e464e69 I removed href='#' but I noticed that it broke some things.
Readding href serves two purposes:

- it makes links reachable with Tab key
- it makes links clickable with Enter key

The alternative to this approach was to introduce [tabindex] and [role]
attributes. But not only using tabindex=0 with <a/> is questionable,
it'd require adding a keyboard handler that'd intercept space and return
key presses and simulated link clicks. Since it's best to leave this
kind of thing to the native UI, I went with readding hrefs instead. I
believe that hash hrefs, even though being a common practice, are silly,
so I decided to settle down with empty hrefs.

As a bonus, I added a snippet that prevents middle mouse clicks from
opening such links/buttons in new tabs, which was the motivation for
e464e69.
2016-08-22 01:40:30 +02:00

27 lines
829 B
Smarty

<% if (ctx.canScore) { %>
<a href class='upvote'>
<% if (ctx.ownScore == 1) { %>
<i class='fa fa-thumbs-up'></i>
<% } else { %>
<i class='fa fa-thumbs-o-up'></i>
<% } %>
<span class='vim-nav-hint'>upvote</span>
<span class='vim-nav-hint'>like</span>
</a>
<% } else { %>
<a href class='upvote inactive'>
<i class='fa fa-thumbs-o-up'></i>
</a>
<% } %>
<span class='value'><%- ctx.score %></span>
<% if (ctx.canScore) { %>
<a href class='downvote'>
<% if (ctx.ownScore == -1) { %>
<i class='fa fa-thumbs-down'></i>
<% } else { %>
<i class='fa fa-thumbs-o-down'></i>
<% } %>
<span class='vim-nav-hint'>downvote</span>
<span class='vim-nav-hint'>dislike</span>
</a>
<% } %>