我需要动态地将HTML邮件中的内容加载到HTML的某个内容区域,以便它能够缩放适应,就像iPhone/Android的本机邮件应用程序一样。我已经花了两天时间在谷歌上搜索和测试,但都没有结果。我正在加载HTML内容(通常设置为width = 600或其他漂亮的东西),但是它不是按比例缩放,而是出现以下情况:
iPhone模拟器示例
HTML非常简单:
经过处理的电子邮件HTML已经加载到一个div(messagedetailcontainer)中,此时我已经尝试了以下几种方法:
非常感谢您提前的帮助!
<div data-role="page" id="messagedetailpage" data-add-back-btn="true">
<div data-role="content" id="messagedetailcontainer"></div>
</div>
经过处理的电子邮件HTML已经加载到一个div(messagedetailcontainer)中,此时我已经尝试了以下几种方法:
- 使用以下代码更改视口大小:$.mobile.metaViewportContent = "width=device-width, initial-scale=0.5, minimum-scale=0.5, maximum-scale=0,5";
- 在div上调用多个触发器,例如:$("#messagedetailcontainer").append(data.msg_body).trigger('updatelayout');
- 与#2相同,但使用“create”,“resize”,“load”和“change”。
- $(window).resize();
- 抓取div并将其放入iFrame中(完全没有运气)
- 我研究了iScroll、ScrollView、各种autoscale.js示例,但似乎没有符合我的需求的。
非常感谢您提前的帮助!
code
var adjustHeight = (((containerHeight - (containerHeight * ratio)) / 2) + 10) * -1; var adjustWidth = ((containerWidth * ratio) - (windowWidth / 2) + 20) * -1; $("#messagedetailcontainer").css(venderPrefix + 'Transform', 'scale(' + ratio + ')') $("#messagedetailcontainer").css({position:'relative', top: adjustHeight + 'px', left: adjustWidth + 'px'});code
- jstafford