数か月前に Asp.NET Web サイトを開発しました。私はそれをいくつかのサーバーでホストし、ウェブサイトのアドレスに無料のエイリアスを使用しました。Alias は、Web サイトのコンテンツが表示される iframe を使用します。例: 私のサイトの元のアドレスは mysite.myhost.address.com で、エイリアス アドレスは mysite.alias.com のようになります。元のサイトを含むエイリアス ページのコードは次のとおりです。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl">
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
<meta name="robots" content="all" />
<meta name="description" content="" />
<meta name="author" content="" />
<meta name="keywords" content="" />
<link rel="Shortcut icon" href="" />
<style type="text/css">
html { margin: 0px; padding: 0px; overflow: hidden; width: 100%; height: 100%; }
body { margin: 0px; padding: 0px; overflow: hidden; width: 100%; height: 100%; }
</style>
</head>
<body>
<iframe style="position:absolute; top:0px; left:0px;" src="mysite.myhost.address.com" width="100%" height="100%" frameborder="0" scrolling="auto" name=""></iframe>
<noframes>
<div style="text-align: center;">
no frames
</div>
</noframes>
</body>
</html>
問題は、aspx ページから生成されたリンクにあります (JavaScript を使用してポストバックをトリガーします)。Android デバイスでは、ページが iframe に表示されている場合、そのようなリンクは機能しません。Android ブラウザーで元の Web サイトのアドレスに直接アクセスすると、すべて正常に動作します。これに対する解決策はありますか?明らかに、iframe ページの属性を変更することはできません。元のウェブサイトだけを変更できます...
編集
動作しない JavaScript のサンプル (これは asp:Link コントロールから生成される通常の JavaScript です) は次のようになります。
javascript:__doPostBack('ctl00$MainContent$NewsList$ctl00$lnkProgramTitle','')
リンクは次のようになります。
<a id="MainContent_NewsList_ctl02_lnkMore" href="javascript:__doPostBack(' ctl00$MainContent$NewsList$ctl02$lnkMore','')">More</a>