8

I have created a hybrid app in which I used bxslider and placed div inside it as follow,

<div class="bxslider">
            <div id="chart1" style="text-align:center">
                <span id="barChartTitle">Bar Chart</span>
                <svg id="chartCanvas" class="margintop40"></svg>
            </div>
            <div id="chart2" style="text-align:center">
                <span id="trendChartTitle">Trend Chart</span> 
                <svg id="chartCanvas" class="margintop40"></svg>
            </div>
        </div>

when ever I make a touch over the bxslider in the html view I receive the following error,

   jquery.bxslider.js:1109 Uncaught DOMException: Failed to execute 'setPointerCapture' on 'Element': InvalidPointerId
    at HTMLDivElement.onTouchStart (http://localhost:8100/js/jquery.bxslider.js:1109:34)
    at HTMLDivElement.dispatch (http://localhost:8100/js/jquery-3.1.1.min.js:3:10315)
    at HTMLDivElement.q.handle (http://localhost:8100/js/jquery-3.1.1.min.js:3:8342)
onTouchStart @ jquery.bxslider.js:1109
dispatch @ jquery-3.1.1.min.js:3
q.handle @ jquery-3.1.1.min.js:3
jquery.bxslider.js:1234 Uncaught DOMException: Failed to execute 'releasePointerCapture' on 'Element': InvalidPointerId
    at HTMLDivElement.onTouchEnd (http://localhost:8100/js/jquery.bxslider.js:1234:32)
    at HTMLDivElement.dispatch (http://localhost:8100/js/jquery-3.1.1.min.js:3:10315)
    at HTMLDivElement.q.handle (http://localhost:8100/js/jquery-3.1.1.min.js:3:8342)

I searched a lot but couldn't find out why the error occurs, please help.

Selva
  • 123
  • 1
  • 1
  • 12
  • I have the same issue. My Bxslider galleries were working fine till I tested the other day and started giving me this error. Interestingly the error occurs only on Android devices and not on the emulator. – Daniela Jan 19 '17 at 13:14
  • I'm developing a hybrid app , so while testing the app in chrom browser using simulator I found this errors in console, this error occur if I make any click on the Bxslider. – Selva Jan 20 '17 at 09:32
  • Have you found a solution? I'm stuck as no other slides integrates as neatly as bxslider. – Daniela Feb 01 '17 at 14:59

2 Answers2

10

Here is a workaround that works. Use this snippet of code:

var chromePointerEvents = typeof PointerEvent === 'function'; if (chromePointerEvents) { if (orig.pointerId === undefined) { return; } }

Insert after:

touchPoints = (typeof orig.changedTouches !== 'undefined') ? orig.changedTouches : [orig];

of file jquery.bxslider.js

More info here read simplicitytrade answer on Github.

Daniela
  • 861
  • 5
  • 11
  • 28
  • Thanks a lot @Daniela, your solution works perfectly. – Selva Feb 02 '17 at 07:51
  • 1
    @BobSwager search in jquery.bxslider.js for touchPoints = (typeof orig.changedTouches !== 'undefined') ? orig.changedTouches : [orig]; and insert it after that – Daniela May 10 '17 at 14:44
2

why don't you try this current version?

<script src="https://cdnjs.cloudflare.com/ajax/libs/bxslider/4.2.15/jquery.bxslider.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/bxslider/4.2.15/jquery.bxslider.min.css" rel="stylesheet" />
  • Good to know there is a new version out. Have you tested it on Android? Has the issue been resolved? – Daniela Jan 13 '19 at 21:03