Bradorego의 솔루션이 저에게 효과적이지만 여기에 더 확장 된 답변이 있습니다.
작은 고려 사항은 %20
대신을 사용하여 본문을 인코딩해야한다는 것입니다 +
. PHP rawurlencode($body)
의 경우urlencode($body)
. 그렇지 않으면 공백 대신 이전 버전의 iOS에서 메시지에 더하기 기호가 표시됩니다.
다음은 iOS 장치 용 SMS 링크를 다시 맞추는 jQuery 기능입니다. Android / 기타 기기는 정상적으로 작동하며 코드를 실행하지 않습니다.
HTML :
<a href="sms:+15551231234?body=Hello%20World">SMS "Hello World" to 555-123-1234</a>
jQuery :
(function() {
if ( !navigator.userAgent.match(/(iPad|iPhone|iPod)/g) ) return;
jQuery('a[href^="sms:"]').attr('href', function() {
// Convert: sms:+000?body=example
// To iOS: sms:+000;body=example (semicolon, not question mark)
return jQuery(this).attr('href').replace(/sms:(\+?([0-9]*))?\?/, 'sms:$1;');
});
})();
가능하면 a.sms-link
대신 같은 클래스를 사용하는 a[href^="sms:"]
것이 좋습니다.