开发者

Is it possible to test whether a user's browser/OS supports a given type of link using javascript?

Is it possible to test whether a user's OS/browser supports a given url scheme using javascript (or anything else)?

For example, mailto: isn't setup on most user's computer that only use webmail. Would it be p开发者_开发百科ossible to somehow catch attempts to click a mailto link and pop up a more descriptive explanation than the browser error message?


In the general case — I don't think so.

In the specific case of mailto: — no.

To solve the problem you need to describe you need to know if the user has a configured email client, not if the browser supports mailto:. Most browsers support mailto:, and if the user doesn't have a configured client — it still 'works' (by starting the email client and prompting the user to configure it).


Would it be possible to somehow catch attempts to click a mailto link and pop up a more descriptive explanation than the browser error message?

I don't know that you can determine whether a browser supports mailto: links. But as for attaching logic to mailto links, you could cycle through the links on the page, and test their href value. If it begins with "mailto:" you could attach a popup upon clicking it.

var maillinks = document.getElementsByTagName("a");
var (var i = 0; i < maillinks.length; i++) {
  var currentlink = maillinks[i];
  if (currentlink.href.substring(0,7) === "mailto:") {
    alert("Sorry. These aren't allowed.");
    return false;
  }
}

The only real solution I can think to this problem is to host your own contact page, providing a small form that the user can submit.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜