因为程序用的smarty的模板,在调用js的时候有一句 $('main_img').onclick = function () {location = this.link;}前面的$不能识别,请问下有没有什么替换的方法因为对js不是很熟,弄了一下午也没有找到方法,请指点一下

解决方案 »

  1.   

    smarty中使用js,要在templates目录中有js,在你的php程序的目录也需要js.必须把这个js文件,分别放置在这两个目录下。要不会报错。
      

  2.   

    我觉得应该是js里面的$('main_img'的$符号和php冲突,不知道怎么改?
      

  3.   

    你把js进行调用不可以吗?<script src="js/jquery.js" type="text/javascript"></script>
      

  4.   

    我就是调用的<script language="javascript" src="../css/ukec_picture.js" type="text/javascript"></script>
      

  5.   

    路径应该没有问题,function $(e) {return document.getElementById(e);}这句都已经成功了
      

  6.   

    恩,是获取了一个值,我alert出来了
    有没有什么方法取代$()呢?
    我对js不是很熟,请教一下,只要不带有$号就好
      

  7.   

    {literal}
    <script language="javascript" type="text/javascript">
    function $(e) {return document.getElementById(e);}
    document.getElementsByClassName = function(cl) {
        var retnode = [];
        var myclass = new RegExp('\\b'+cl+'\\b');
        var elem = this.getElementsByTagName('*');
        for (var i = 0; i < elem.length; i++) {
            var classes = elem[i].className;
            if (myclass.test(classes)) retnode.push(elem[i]);
        }
        return retnode;
    }
    var MyMar;
    var speed = 1; //速度,越大越慢
    var spec = 1; //每次滚动的间距, 越大滚动越快
    var ipath = '../images/images/'; //图片路径
    var thumbs = document.getElementsByClassName('thumb_img');
    for (var i=0; i<thumbs.length; i++) {
        thumbs[i].onmouseover = function () {$('main_img').src=this.rel; $('main_img').link=this.link;};
        thumbs[i].onclick = function () {location = this.link}
    }
    $('main_img').onclick = function () {location = this.link;}
    $('gotop').onmouseover = function() {this.src = ipath + 'gotop2.gif'; MyMar=setInterval(gotop,speed);}
    $('gotop').onmouseout = function() {this.src = ipath + 'gotop.gif'; clearInterval(MyMar);}
    $('gobottom').onmouseover = function() {this.src = ipath + 'gobottom2.gif'; MyMar=setInterval(gobottom,speed);}
    $('gobottom').onmouseout = function() {this.src = ipath + 'gobottom.gif'; clearInterval(MyMar);}
    function gotop() {$('showArea').scrollTop-=spec;}
    function gobottom() {$('showArea').scrollTop+=spec;}
    </script>
    {/literal}
    我现在在tpl中直接使用上面的代码,就不存在调用问题,但是$还是无法识别