Я включаю HTML-страницы в приложение для iPad-журналов, используя WebView (приложение Woodwing Reader).Все файлы для страниц HTML связаны с приложением.
Корневой каталог приложения содержит папку [images], которая содержит подкаталоги папок для каждой страницы в приложении (то есть [page1], [page2], [page3] и т. д.).Также в корневом каталоге находится основной XML-файл, который отображает структуру макета страниц.
Я пытаюсь создать HTML-страницу, которая читает [magazine.xml] и делится контентом через Twitter, FB и т. Д.. Я могу проанализировать данные из [magazine.xml] на внешнюю веб-страницу (которая будет использоваться для общего URL-адреса), но проблема в том, что внешняя веб-страница не может распознать дату выпуска журнала, которой следует поделиться,Поскольку у каждого выпуска одно и то же соглашение об именах для файла XML [magazine.xml].
, я могу вручную вставить дату выпуска в свое приложение для обмена через javascript, но я бы предпочел сделать это автоматизированным процессом.В XML-файле есть тег [publate], в котором указана дата публикации, поэтому я пытаюсь прочитать этот тег с помощью JavaScript и вставить его в строку URL-адреса ... но пока безуспешно.
Ниже приведен пример моего JavaScript:
var issue = '08-27-2011';
$(function() {
var src = 'http://www.example.com/sections/ipad/'+section+'/?issue='+issue;
$('<iframe " src="' + src + '" width="100%" height="100%" scrolling="auto" frameborder="0"><\/iframe>').appendTo('#iframe');
});
А вот пример структуры XML:
<?xml version="1.0" encoding="UTF-8"?>
<issue domversion="1.0">
<issuedate>08-19-2011</issuedate>
<items>
<item>
<id>111</id>
<category>Story Category</category>
<title>Story Title</title>
<description>Description</description>
<author/>
<pages>
<page>
<horizontalpage>
<objects>
<object>
<id>000111222.1</id>
<type>webview</type>
<x>0</x>
<y>0</y>
<width>1024</width>
<height>768</height>
<link>bundle://images/111/PageID/PageID.html</link>
</object>
</objects>
<pthumb>images/111/PageID_Thumbnail_h.jpg</pthumb>
<ppreview>images/111/PageID_Preview_h.jpg</ppreview>
</horizontalpage>
<verticalpage>
<objects>
<object>
<id>000111222a.1</id>
<type>activeelement</type>
<x>0</x>
<y>0</y>
<width>768</width>
<height>1024</height>
<link>bundle://images/111/PageID/PageID.html</link>
</object>
</objects>
<pthumb>images/111/PageID_Thumbnail_v.jpg</pthumb>
<ppreview>images/111/PageID_Preview_v.jpg</ppreview>
</verticalpage>
</page>
Как я уже упоминал ранее, я бы предпочел автоматизировать процесссбора вопроса вар.Я попытался сделать это с помощью следующего кода, но безрезультатно:
xmlDoc=loadXMLDoc("../../magazine.xml");
var issue = xmlDoc.getElementsByTagName("issuedate");
$(function() {
var src = 'http://www.example.com/sections/ipad/'+section+'/?issue='+issue;
$('<iframe " src="' + src + '" width="100%" height="100%" scrolling="auto" frameborder="0"><\/iframe>').appendTo('#iframe');
});
Как видите, файл XML находится в двух каталогах по сравнению с каталогом, в котором находится файл javascript.Я не могу понять, как сделать эту работу ... ваша помощь будет высоко ценится.
Спасибо, Карлос
------------------------------------------------------------------------------------------>
ОБНОВЛЕНИЕ:
Я понял это с помощью друга с работы.Решение было на самом деле проще, чем я думал!Я просто поместил свои HTML-страницы в корневой каталог приложения и вызвал файл XML со следующим кодом:
$(function() {
var issue;
$.ajax({
async: false,
type: "GET",
url: "magazine.xml",
dataType: "xml",
success: function(xml) {
issue = $(xml).find('issuedate').text();
}
});
var src = 'http://www.example.com/ipad/'+section+'/?issue='+issue;
$('<iframe " src="' + src + '" width="100%" height="100%" scrolling="auto" frameborder="0"><\/iframe>').appendTo('#iframe');
});
Как вы можете видеть, я смог передать переменную 'issue' в URLтакже.