我正在将ShareThis库用于我正在工作的网站。我想使该站点可访问,以便用户可以浏览并点击Enter并触发click事件。现在,当用户点击任何社交媒体按钮上的Enter键时,都会显示一条控制台消息,但不会像单击一样对待它,而是打开共享页面。
这仅适用于最后一个按钮,即电子邮件按钮。它将打开正确的模式(其他每个按钮都将打开不同的页面),但每个页面仍会打印出控制台消息。这是我的代码,我不确定为什么它不起作用。
这是我的JS代码:
$('.sharethis-body .keypress-click').each(function () {
$(this).keypress(function (e) {
var key = e.which;
if (key == 13) // the enter key code
{
$(this).click();
console.log("click");
return false;
}
return true;
});
});
这是我的HTML:
<div class="sharethis-body">
<div class="sthoverbuttons-label"><span>Share</span></div>
<span tabindex="0" class='st_facebook_large keypress-click' displaytext='Facebook' aria-label='Facebook'></span>
<span tabindex="0" class='st_twitter_large keypress-click' displaytext='Tweet' aria-label='Twitter'></span>
<span tabindex="0" class='st_googleplus_large keypress-click' displaytext='Google +' aria-label='Google Plus'></span>
<span tabindex="0" class='st_linkedin_large keypress-click' displaytext='LinkedIn' aria-label='LinkedIn'></span>
<span tabindex="0" class='st_email_large keypress-click' displaytext='Email' aria-label='Email'></span>
</div>
任何帮助,将不胜感激!
答案 0 :(得分:0)
不知道如何使用ShareThis,但是可以通过将“ span”更改为“ button”来解决您的问题。通过使用按钮,您可以获得本机聚焦能力。您还可以清理代码,使其看起来像这样。