Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

HTML Div vraagje

Pagina: 1
Acties:

  • argon007
  • Registratie: April 2011
  • Laatst online: 20-11 22:53
Hallo,

Via een tutorial maakte ik een webpagina aan waarbij de temperatuur in de woonkamer uitgetekend wordt (Via Raspberry Pi). Dit werkt zoals het hoort.

In de originel tutorial zie het er als volgt uit: http://warlord.no-ip.com/index.html

Wat dien in ik mijn HTML code aan te passen zodat mijn Highchart ook naast het menu komt te staan, en niet er onder? Ik kan het maar niet vinden...
Dit is mijn originele HTML code van de pagina:

HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
<!DOCTYPE HTML>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>Home Temperatures With RaspberryPi</title>
      <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <meta http-equiv="refresh" content="300">

          <!-- Le styles -->
    <link href="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.3.2/css/bootstrap.min.css" rel="stylesheet">
    <style type="text/css">
      body {
        padding-top: 60px;
        padding-bottom: 40px;
      }
    </style>
    <link href="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.3.2/css/bootstrap-responsive.min.css" rel="stylesheet">

    <!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
    <!--[if lt IE 9]>
      <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->

    <!-- Le fav and touch icons -->
    <link rel="shortcut icon" href="ico/favicon.ico">
    </head>

   
   <body>   
   
   
       <div class="navbar navbar-inverse navbar-fixed-top">
         <div class="navbar-inner">
           <div class="container-fluid">

             <a class="brand" href="index.html">Home Temperatures</a>
             
             <div class="nav-collapse collapse">
               <ul class="nav">
                 <!-- <li class="active"><a href="index.htm">Home</a></li> -->
               </ul>
             </div>
             
           </div>
         </div>
       </div>

       <div class="container-fluid">
         <div class="row-fluid">
           <div class="span2">
             <div class="well sidebar-nav">
               <ul class="nav nav-list">
                 <li class="nav-header">Temperature</li>
                  <li><a href="index.html?3h">Last 3h</a></li>
                  <li><a href="index.html">Last 24h</a></li>
                  <li><a href="index.html?48h">Last 2 Days</a></li>
                  <li><a href="index.html?1w">Last Week</a></li>
                  <li><a href="index.html?1m">Last Month</a></li>
                  <li><a href="index.html?3m">Last 3 Month</a></li>
                  <li><a href="index.html?1y">Last Year</a></li>
               </ul>
             </div><!--/.well -->
           </div><!--/span-->
           <div class="span10">
             <div id="content"></div>
             <hr>
             <div id="weather" style="margin-left: 20px;"></div>
           </div><!--/span-->
         </div><!--/row-->

         <hr>

       </div><!--/.fluid-container-->
    <!-- Le javascript
    ================================================== -->
    <!-- Placed at the end of the document so the pages load faster -->


        <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
        <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/highcharts/2.3.1/highcharts.js"></script>
        <script type="text/javascript">
            $(function () {
                $(document).ready(function() {

                    $.ajax({
                        type: "GET",
                        url: "data/temps24h.xml",
                        dataType: "xml",
                        success: function(xml) {

                            Highcharts.setOptions({global:{useUTC:false}});
                            options={chart:{renderTo:"containerxxx",type:"spline"},title:{text:""},subtitle:{text:""},xAxis:{type:"datetime",dateTimeLabelFormats:{hour:"%H. %M"}},yAxis:{title:{text:"T (°C)"}},tooltip:{formatter:function(){return"<b>"+this.series.name+"</b><br/>"+Highcharts.dateFormat("%H:%M",this.x)+": "+this.y.toFixed(1)+"°C"}},plotOptions:{series:{marker:{radius:2}}},lineWidth:1,series:[]}
  
                            var series = []
                            //alert('start');

                            //define series
                            $(xml).find("entry").each(function() {
                                var seriesOptions = {
                                    name: $(this).text(),
                                    data: []
                                };
                                options.series.push(seriesOptions);
                            });
                            //alert('finish part 1');

                            //populate with data
                            $(xml).find("row").each(function() {
                                var t = parseInt($(this).find("t").text()) * 1000

                                $(this).find("v").each(function(index) {
                                    var v = parseFloat($(this).text())
                                    v = v || null
                                    if (v != null) {
                                        //alert('index = ' + index + 'time=' + t + 'v=' + v);
                                        options.series[index].data.push([t, v])
                                    };
                                });
                            });
                            //alert('finish part 2');

                            options.title.text = "Temperatures of the last 24h"
                            $.each(series, function(index) {
                                options.series.push(series[index]);
                            });
                            //alert('finish part 3');

                            chart = new Highcharts.Chart(options);
                        }
                    });
                });
            });

        </script>

        <script src="http://code.highcharts.com/highcharts.js"></script>
        <script src="http://code.highcharts.com/modules/exporting.js"></script>

        <!-- Additional files for the Highslide popup effect -->
        <script type="text/javascript" src="http://www.highcharts.com/highslide/highslide-full.min.js"></script>
        <script type="text/javascript" src="http://www.highcharts.com/highslide/highslide.config.js" charset="utf-8"></script>
        <link rel="stylesheet" type="text/css" href="http://www.highcharts.com/highslide/highslide.css" />

    <div id="containerxxx" style="min-width: 400px; height: 400px; margin: 0 auto"></div>

</body>
</html>


Iemand die de oplossing weet? Thx !

  • Tunaflish
  • Registratie: Februari 2010
  • Laatst online: 17-11 12:42
Je code in de goede tags zetten zodat het wat leesbaarder wordt, en daarna die div#containerxxx in je div#content plaatsen, in plaats van aan het einde van je code.

So long, and thanks for all the fish!


  • argon007
  • Registratie: April 2011
  • Laatst online: 20-11 22:53
Ik plaats dus
HTML:
1
    <div id="containerxxx" style="min-width: 400px; height: 400px; margin: 0 auto">


Net voor

HTML:
1
2
3
4
5
6
7
8
9
        <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
        <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/highcharts/2.3.1/highcharts.js"></script>
        <script type="text/javascript">
            $(function () {
                $(document).ready(function() {

                    $.ajax({
                        type: "GET",
...


En dan op het eindje

HTML:
1
</div>

?

Sorry, maar ik geraak er echt niet aan uit. Mijn kennis van HTML / DIVS is niet echt al dat...

[ Voor 4% gewijzigd door RobIII op 14-10-2014 16:54 ]


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Als je code post, gebruik dan a.u.b. code tags en beperkt je tot relevante(!)* stukjes(!) code. Verder zijn testcases handig, maar als die overmorgen weer offline zijn is je topic overmorgen niets meer waard; uiterst frustrerend voor mensen die op je topic stuiten middels de search omdat ze (mogelijk) eenzelfde vraag hebben. Als je een testcase maakt, zorg dan dat alle relevante(!) code maar ook informatie omtrent je probleem in je topic staat en plaats desnoods een testcase op jsfiddle o.i.d. waar de testcase kan blijven 'voortleven' (tot op bepaalde hoogte natuurlijk) nadat jij je oplossing gevonden hebt en de URL die nu in je TS staat offline trekt ;)

* Zo is heel het menu, de <head>-sectie etc. totaal niet relevant voor je probleem.

[ Voor 6% gewijzigd door RobIII op 14-10-2014 17:02 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • argon007
  • Registratie: April 2011
  • Laatst online: 20-11 22:53
Hallo,

Opmerkingen genoteerd!
Had nog nooit gehoord van jsfiddle (zoals reeds gemeld en beginneling op webscripting niveau). Ik pas dit ook nog aan.

Groeten

  • Morrar
  • Registratie: Juni 2002
  • Laatst online: 21:44
Misschien handig om alle externe scripts en stylesheets even naar de header te verplaatsen. Als het goed is opent de browser deze toch in de achtergrond en gaat verder met het renderen van de pagina. Voor de laadtijd zou het dus niet uit mogen maken, maar het maakt je code wel veel overzichtelijker.

Ook de lap Javascript-code hoeft niet in de body zelf te staan, maar kan in de header / een aparte scriptfile. Ook dat maakt je HTML code overzichtelijker, waardoor je beter kunt zien wat de structuur van de DIV's is en waarom ze staan waar ze staan.

Ik vermoed dat dit je probleem op zou kunnen lossen:

code:
64
65
66
67
68
69
70
<div class="span10">
  <div id="content">
    <div id="containerxxx" style="min-width: 400px; height: 400px; margin: 0 auto"></div>
  </div>
  <hr>
  <div id="weather" style="margin-left: 20px;"></div>
</div><!--/span-->


Dan komt je grafiek in de content-div en boven de div met het weer lijkt me...

[ Voor 37% gewijzigd door Morrar op 14-10-2014 17:24 ]


  • argon007
  • Registratie: April 2011
  • Laatst online: 20-11 22:53
Morrar, Thx !
Dat werkte inderdaad. Layout ziet er nu uit zoals het hoort!

  • n8n
  • Registratie: Juni 2007
  • Laatst online: 21:25

n8n

Morrar schreef op dinsdag 14 oktober 2014 @ 17:18:
Misschien handig om alle externe scripts en stylesheets even naar de header te verplaatsen. Als het goed is opent de browser deze toch in de achtergrond en gaat verder met het renderen van de pagina. Voor de laadtijd zou het dus niet uit mogen maken, maar het maakt je code wel veel overzichtelijker.

Ook de lap Javascript-code hoeft niet in de body zelf te staan, maar kan in de header / een aparte scriptfile. Ook dat maakt je HTML code overzichtelijker, waardoor je beter kunt zien wat de structuur van de DIV's is en waarom ze staan waar ze staan.

Ik vermoed dat dit je probleem op zou kunnen lossen:

code:
64
65
66
67
68
69
70
<div class="span10">
  <div id="content">
    <div id="containerxxx" style="min-width: 400px; height: 400px; margin: 0 auto"></div>
  </div>
  <hr>
  <div id="weather" style="margin-left: 20px;"></div>
</div><!--/span-->


Dan komt je grafiek in de content-div en boven de div met het weer lijkt me...
Scripts in de head worden tegenwoordig afgeraden door zowel Google ala Yahoo

  • R4gnax
  • Registratie: Maart 2009
  • Laatst online: 06-09 17:51
n8n schreef op zondag 26 oktober 2014 @ 11:13:
[...]

Scripts in de head worden tegenwoordig afgeraden door zowel Google ala Yahoo
Als je van spul zoals Modernizr gebruik wil maken icm met de ingebouwde shim van HTML5 tags voor IE8, dan rest je weinig keus.

Overigens is het al lang niet meer zo dat het inladen van JavaScript via de document head slecht hoeft te zijn. Performance-technisch is het bijvoorbeeld best interessant om een bootstrapping script met loader in de head te hebben staan en vanaf daar non-blocking je verdere scripts in te laden. Haal je best mooie laadtijden mee.

[ Voor 3% gewijzigd door R4gnax op 27-10-2014 23:36 ]

Pagina: 1