获取新浪天气api显示天气情况(转)

Posted djdliu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取新浪天气api显示天气情况(转)相关的知识,希望对你有一定的参考价值。

直接上一个html的demo

<!doctype html>
<html class="no-js fixed-layout">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <title>天气</title>
</head>
<body>
<div class="top-tool">
    <span id="sj"></span><span id="weather"><img width="16px" height="16px" src=""></span>
    <form action="/Search" method="get" id="qform" class="search-form" style="text-align:right;display:inline;float:right;padding-right:10px;" target="_blank">
        <span class="round">
        <input name="keywords" id="q" tabindex="1" class="input-key search-q ac_input" value="" maxlength="100" autocomplete="off">
        </span> <span class="button">
        <input type="submit" tabindex="2" id="su" value="搜&nbsp;&nbsp;索" class="ui-btn" style="padding: 0px 5px;">
        </span>
    </form>
</div>
<script type="text/javascript" src="jquery2.1.4.js"></script>
<script type="text/javascript">
    function showLocale(objD) {
        var str, colorhead, colorfoot;
        var yy = objD.getYear();
        if (yy < 1900) yy = yy + 1900;
        var MM = objD.getMonth() + 1;
        if (MM < 10) MM = 0 + MM;
        var dd = objD.getDate();
        if (dd < 10) dd = 0 + dd;
        var hh = objD.getHours();
        if (hh < 10) hh = 0 + hh;
        var mm = objD.getMinutes();
        if (mm < 10) mm = 0 + mm;
        var ss = objD.getSeconds();
        if (ss < 10) ss = 0 + ss;
        var ww = objD.getDay();
        if (ww == 0) colorhead = "";
        if (ww > 0 && ww < 6) colorhead = "";
        if (ww == 6) colorhead = "";
        if (ww == 0) ww = "星期日";
        if (ww == 1) ww = "星期一";
        if (ww == 2) ww = "星期二";
        if (ww == 3) ww = "星期三";
        if (ww == 4) ww = "星期四";
        if (ww == 5) ww = "星期五";
        if (ww == 6) ww = "星期六";
        colorfoot = ""
        str = colorhead + yy + "-" + MM + "-" + dd + " " + hh + ":" + mm + ":" + ss + "  " + ww + colorfoot;
        return (str);
    }
    function tick() {
        var today;
        today = new Date();
        document.getElementById("sj").innerHTML = showLocale(today);
        window.setTimeout("tick()", 1000);
    }
    tick();


    function findWeather() {
        var cityUrl = http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js;
        $.getScript(cityUrl, function (script, textStatus, jqXHR) {
            var citytq = remote_ip_info.city; // 获取城市

            citytq = "郑州";
            var url = "http://php.weather.sina.com.cn/iframe/index/w_cl.php?code=js&city=" + citytq + "&day=0&dfc=3";
            $.ajax({
                url: url,
                dataType: "script",
                scriptCharset: "gbk",
                success: function (data) {
                    var _w = window.SWther.w[citytq][0];
                    var _f = _w.f1 + "_0.png";
                    if (new Date().getHours() > 17) {
                        _f = _w.f2 + "_1.png";
                    }
                    var img = "<img width=‘16px‘ height=‘16px‘ src=‘http://i2.sinaimg.cn/dy/main/weather/weatherplugin/wthIco/20_20/" + _f
                            + "‘ />";
                    var tq = "今日天气 : " + citytq + " " + img + " " + _w.s1 + " " + _w.t1 + "℃~" + _w.t2 + "" + _w.d1 + _w.p1 + "";
                    $(#weather).html(tq);
                }
            });
        });
    }
    findWeather()
</script>
</body>
</html>

别忘记把jquery的库文件替换成本地的

以上是关于获取新浪天气api显示天气情况(转)的主要内容,如果未能解决你的问题,请参考以下文章

js获取天气

API新浪天气接口 Beta

使用WebRequest对象调用新浪天气预报<转>

PHP调用API接口实现天气查询功能

js获取新浪天气接口

C# winform生成天气预报(转)