te')); return $arr; } /* 遍历用户所有主题 * @param $uid 用户ID * @param int $page 页数 * @param int $pagesize 每页记录条数 * @param bool $desc 排序方式 TRUE降序 FALSE升序 * @param string $key 返回的数组用那一列的值作为 key * @param array $col 查询哪些列 */ function thread_tid_find_by_uid($uid, $page = 1, $pagesize = 1000, $desc = TRUE, $key = 'tid', $col = array()) { if (empty($uid)) return array(); $orderby = TRUE == $desc ? -1 : 1; $arr = thread_tid__find($cond = array('uid' => $uid), array('tid' => $orderby), $page, $pagesize, $key, $col); return $arr; } // 遍历栏目下tid 支持数组 $fid = array(1,2,3) function thread_tid_find_by_fid($fid, $page = 1, $pagesize = 1000, $desc = TRUE) { if (empty($fid)) return array(); $orderby = TRUE == $desc ? -1 : 1; $arr = thread_tid__find($cond = array('fid' => $fid), array('tid' => $orderby), $page, $pagesize, 'tid', array('tid', 'verify_date')); return $arr; } function thread_tid_delete($tid) { if (empty($tid)) return FALSE; $r = thread_tid__delete(array('tid' => $tid)); return $r; } function thread_tid_count() { $n = thread_tid__count(); return $n; } // 统计用户主题数 大数量下严谨使用非主键统计 function thread_uid_count($uid) { $n = thread_tid__count(array('uid' => $uid)); return $n; } // 统计栏目主题数 大数量下严谨使用非主键统计 function thread_fid_count($fid) { $n = thread_tid__count(array('fid' => $fid)); return $n; } ?>javascript - How to reposition lightslider.js controls outside of the main carousel - Stack Overflow
最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - How to reposition lightslider.js controls outside of the main carousel - Stack Overflow

programmeradmin2浏览0评论

By default, the slider controls are positioned inside the main carousel div (top line in attached image). I want the controls to be separately positioned so they don't appear on top of the images (bottom line in attached image).

I can see the relevant code on line 186 of the lightslider.js file that places & positions the carousel controls but I don't know what I'd have to change to position the controls outside of the main carousel div.

By default, the slider controls are positioned inside the main carousel div (top line in attached image). I want the controls to be separately positioned so they don't appear on top of the images (bottom line in attached image).

I can see the relevant code on line 186 of the lightslider.js file that places & positions the carousel controls but I don't know what I'd have to change to position the controls outside of the main carousel div.

Share Improve this question asked Oct 13, 2015 at 7:14 noodl_esnoodl_es 1,4761 gold badge17 silver badges28 bronze badges 1
  • Can your create a problem fiddle. I sense issue would be with your other CSS.. – Guruprasad J Rao Commented Oct 13, 2015 at 7:20
Add a ment  | 

3 Answers 3

Reset to default 8

First of all you have to remove the default next/prev buttons by passing controls: false. Then create your own next/prev buttons and use public methods (goToPrevSlide() , goToNextSlide()) to translate the slider to next and previous slides respectively.

Html

<ul id="lightSlider">
    <li data-thumb="http://sachinchoolur.github.io/lightslider/img/thumb/cS-1.jpg">
        <img src="http://sachinchoolur.github.io/lightslider/img/cS-1.jpg" />
    </li>
    <li data-thumb="http://sachinchoolur.github.io/lightslider/img/thumb/cS-2.jpg">
        <img src="http://sachinchoolur.github.io/lightslider/img/cS-2.jpg" />
    </li>
</ul>
<button type="button" id="goToPrevSlide">Prev</button>
<button type="button" id="goToNextSlide">Next</button>

Javascript

var slider = $('#lightSlider').lightSlider({
    controls: false
});
$('#goToPrevSlide').on('click', function () {
    slider.goToPrevSlide();
});
$('#goToNextSlide').on('click', function () {
    slider.goToNextSlide();
});

Here is the jsfiddle http://jsfiddle/2patspw2/1519/

Simply we can override the Lightslider plugin CSS to :

.lSSlideOuter {
    position: relative;
    overflow: visible;
}

and override the position relative to static of .lSSlideWrapper.

.lSSlideWrapper {
    position: static;
}

I tried moving the controls section outside the .LSSliderOuter section bu using this

jQuery(document).ready(function($){
    $('.lSAction').insertBefore('.lSSlideOuter');
});

Then the overflow: hidden property didn't affert the controls and I could use CSS to move them outside. Worked like a charm.

发布评论

评论列表(0)

  1. 暂无评论