1

我需要在我的 phonegap 应用程序中显示一个网页,并能够应用一个新的 css 文件来覆盖显示 - 或者也许有不同的方法可以在没有 css 的情况下做到这一点?

我知道这必须是可能的,因为如果我用 mozilla 在我的桌面上打开网页,我可以使用 firebug 调整 css 以获得我想要的外观。我不能使用 iframe,因为我需要做的唯一改变就是尺寸。我需要将其缩小一点,因为我不想在移动应用程序中滚动。这是我觉得这仍然可能不起作用的代码,因为我认为我应该启用 Flash(我试图加载的页面是实时流)但我想先看看这些更改做了什么

索引.html:

<!DOCTYPE html>
<html>
<head>
<title>Hello Phonegap</title>

    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no;" />
    <meta charset="utf-8">


    <script type="text/javascript" charset="utf-8" src="phonegap.js"></script>
    <script src="jquery-mobile/jquery-1.6.4.min.js" type="text/javascript"></script>
    <script src="jquery-mobile/jquery.mobile-1.0.min.js" type="text/javascript"></script>
    <link rel="stylesheet" href="theme.css" />
    <link rel="stylesheet" href="theme.min.css" />
    <script type="text/javascript" charset="utf-8" src="childbrowser.js"></script>
    <script type="text/javascript">




   function onBodyLoad()
    {       
        document.addEventListener("deviceready", onDeviceReady, false);
    }

    function onDeviceReady()
    {
        // do your thing!
        navigator.notification.alert("Phonegap is ready")
    }

    </script>
<link href="jquery-mobile/jquery.mobile.structure-1.0.min.css" rel="stylesheet" type="text/css">
</head>
<body onload="onBodyLoad()">
    <!-- Home -->
<div data-role="page" id="page1">
        <div data-role="content">
          <ul class="ui-btn-up-a" data-role="listview" data-theme="a">
            <li><a href="#">Page</a></li>
            <li><a href="#">Page</a></li>
            <li><a href="#">Page</a></li>
            <li class="ui-bar-a"><a href="#" onClick= "window.plugins.childBrowser.showWebPage('http://www.google.com');">child</a></li>
          </ul>

        </div>

    </div>
  </div>

配置文件

<?xml version="1.0" encoding="UTF-8" ?>
<widget xmlns = "http://www.w3.org/ns/widgets"
xmlns:gap = "http://phonegap.com/ns/1.0"
id        = "com.phonegap.example"
version   = "1.0.0">

<name>PhoneGap Build Application</name>

<description>
A simple PhoneGap Build application.
</description>

<author href="https://example.com" email="you@example.com">
Your Name
</author>
<gap:plugin name="ChildBrowser" />
<access origin="*" />

</widget>
4

2 回答 2

0

要添加一个新的 css 文件,请使用以下命令:

var obj=document.createElement("link");
obj.setAttribute("rel", "stylesheet")
obj.setAttribute("type", "text/css")
obj.setAttribute("href", your_css_file)
obj.setAttribute("id", id_to_remove_it_later);
document.getElementsByTagName("head")[0].appendChild(obj);

希望能帮助到你

于 2013-03-28T20:40:49.807 回答
0

在你 res/config.xml

您必须添加新功能

<feature name="ChildBrowser" > <plugin name="ChildBrowser" value="com.phonegap.plugins.childBrowser.ChildBrowser"/> </feature>

并删除<gap:plugin name="ChildBrowser" />


您可以在此代码中进行测试(HTML)

<div onclick='window.plugins.childBrowser.showWebPage("http://cran.r-project.org/doc/manuals/R-intro.pdf",
{ showLocationBar: true, showNavigationBar: true, showAddress: true});'><b>test222</b></div>   

<div onclick='window.plugins.childBrowser.showWebPage("http://cran.r-project.org/doc/manuals/R-intro.pdf",
{ showLocationBar: true, showNavigationBar: true, showAddress: false});'><b>test222</b></div>   

<div onclick='window.plugins.childBrowser.showWebPage("http://cran.r-project.org/doc/manuals/R-intro.pdf",
{ showLocationBar: true, showNavigationBar: false, showAddress: true});'><b>test222</b></div>   

<div onclick='window.plugins.childBrowser.showWebPage("http://cran.r-project.org/doc/manuals/R-intro.pdf",
{ showLocationBar: true, showNavigationBar: false, showAddress: false});'><b>test222</b></div>   

<div onclick='window.plugins.childBrowser.showWebPage("http://cran.r-project.org/doc/manuals/R-intro.pdf",
{ showLocationBar: false, showNavigationBar: true, showAddress: false});'><b>test222</b></div> 
于 2014-07-16T09:07:03.150 回答