Safari for Mac忽略HTML5下载文件名

Mic*_*ael 5 javascript safari html5

我有一个地图Web应用程序,并希望能够在GPX文件中保存路由数据.为此,我生成一个包含数据的锚标记,并使用HTML5 download属性设置文件名.这在Firefox(29.0.1)和Chrome(37.0.2062.94)中的OS X(10.9.4)上按预期工作,但在Safari(7.0.6)中,它忽略了下载属性中的名称并保存了一个名为只是"未知".

这是我的HTML文件中的链接:

<a href="#" id="map_save">Save to GPX</a>
Run Code Online (Sandbox Code Playgroud)

这是它在我的Javascript文件中的链接方式(使用jQuery):

function exportToGPX( gpxData ) {

    gpxData = 'data:application/gpx+xml;charset=utf-8,' + encodeURIComponent( gpxData );
    $( '#map_save' ).attr( { 'href': gpxData ,'download': 'myfile.gpx' } );

}

$( document ).ready( function() {

    $( '#map_save' ).click( function( event ) {
        exportToGPX.apply();
    } );

} );
Run Code Online (Sandbox Code Playgroud)

我所看到的一切都表明Safari应该尊重这个属性,如果它在Chrome中运行,它可能不是WebKit问题.使用Web Inspector查看DOM树显示属性已正确应用:

<a href=?"data:?application/?gpx+xml;?ch…09%3C%2Ftrk%3E%0A%3C%2Fgpx%3E" id=?"map_save" download=?"myfile.gpx">?Save to GPX?</a>?
Run Code Online (Sandbox Code Playgroud)

正如我所说,它确实下载了文件,只是没有给它一个正确的名称.有什么我做错了或者还需要做些什么才能在Safari中正常工作?